sketchi 0.17.1 → 0.17.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/sketchi.js +2 -2
package/sketchi.js
CHANGED
|
@@ -233,7 +233,7 @@ authority: ${e.diagram.authority}`,e=>({id:e.diagram.manifest.id,restoredFromRev
|
|
|
233
233
|
`:`error: usage_error
|
|
234
234
|
${a}
|
|
235
235
|
next: ${i}
|
|
236
|
-
`)}},c=new Proxy(globalThis.console,{get(e,t,a){if("log"===t)return(...t)=>{(1!==t.length||""!==t[0])&&e.log(...t)};let s=Reflect.get(e,t,a);return"function"==typeof s?s.bind(e):s}}),pL(g9,{version:"0.17.1"})(e).pipe(X.sFT(e=>eu.i5(e,ru)&&"ShowHelp"!==e._tag?rh(n.formatErrors([e])):X.rIH),X.PfK(ch,{builtIns:[co,cr,cc]}),X.PfK(nl,n),X.PfK(rd,c))).pipe(X.khu({onFailure:e=>X.JkU(function*(){let t,a=ee.getOrUndefined(U.L$(e));if(a instanceof go)return a.exitCode;if(a instanceof sV)return 7;let s=function(e){if(eu.i5(e,ru))return"ShowHelp"===e._tag?2*(e.errors.length>0):2}(a);if(void 0!==s)return s;let l=yield*gi;return yield*l.stderr((t={code:"internal_error",message:"Sketchi could not complete the command.",hint:"Retry once; if it persists, report the command and inputs without secrets."},"json"===d?s4({ok:!1,command:"sketchi",error:t}):gc(t))).pipe(X.MfU(()=>X.rIH)),1}),onSuccess:()=>X.PyW(0)}))}),ut=j.Um(sP.Txp,(0,sP.rRT)({createId:e=>`${e}_offline_cli`,icons:ij})),ua=j.Gt(s9,ut),us=j.Gt(lp,ut),ul=j.Um(li,is),ui=j.Gt(im,ul),uo=j.Gt(iX,j.Um(ui,iI)),ur=j.Gt(gL,gk),un=j.Um(li,is,ua,us,ui,uo,iI,ur,gz,lu.pipe(j.Gt(li)),gn,rc),uc=j.S5(un,sS);$(ue(process.argv.slice(2)).pipe(X.Mim(e=>X.OH5(()=>{process.exitCode=e})),X.Gte(uc)),{disableErrorReporting:!0})},1688(e,t,a){var s=a(2718);let l=s.xCb(["invalid_render_artifact","render_limit_exceeded","unsupported_render_glyph","rasterization_failed"]),i=s.xCb(["artifact","geometry","font","rasterization"]);class o extends s.rNF()("HeadlessPngRenderError",{cause:s.kld(),code:l,stage:i,message:s.QfV,details:s.O31(s.QfV)}){}a.d(t,{FG:()=>o})},5030(e,t,a){function s(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function l(e,t,a,s){return{code:e,message:t,...void 0===a?{}:{observed:a},...void 0===s?{}:{limit:s}}}function i(e,t=0){let a=1/0,o=1/0,r=-1/0,n=-1/0;for(let t of e){if(!(s(t)&&"number"==typeof t.x&&Number.isFinite(t.x)&&"number"==typeof t.y&&Number.isFinite(t.y)&&"number"==typeof t.width&&Number.isFinite(t.width)&&"number"==typeof t.height&&Number.isFinite(t.height)))return l("invalid_geometry","element geometry is invalid");let e=Math.abs(t.width),i=Math.abs(t.height);if(e>8192||i>8192)return l("element_dimension",`element dimension exceeds ${String(8192)}`,Math.max(e,i),8192);let c=Math.hypot(e,i)/2,d=t.x+t.width/2,p=t.y+t.height/2;a=Math.min(a,d-c),o=Math.min(o,p-c),r=Math.max(r,d+c),n=Math.max(n,p+c)}if(0===e.length)return;let c=r-a,d=n-o;if(c>8192||d>8192)return l("canvas_dimension",`canvas dimension exceeds ${String(8192)}`,Math.max(c,d),8192);let p=c*d;if(p>6291456)return l("canvas_area",`canvas area exceeds ${String(6291456)}`,p,6291456);let h=(c+40)*1*((d+40+t)*1);if(h>0x1800000)return l("output_pixels",`PNG output exceeds ${String(0x1800000)} pixels at minimum scale`,h,0x1800000)}function o(e,t){let a=new Set(t.flatMap(e=>s(e)&&"image"===e.type&&!0!==e.isDeleted&&"string"==typeof e.fileId?[e.fileId]:[])),i=0;for(let t of a){let a=Object.hasOwn(e,t)?e[t]:void 0,l=s(a)?a.dataURL:void 0;"string"==typeof l&&(i+=l.length)}return i>8388608?l("file_bytes",`embedded image data exceeds ${String(8388608)} bytes`,i,8388608):void 0}function r(e,t=0){return i(e,t)?.message}function n(e,t){if(!Number.isFinite(e)||!Number.isFinite(t)||e<=0||t<=0)return l("invalid_geometry","rendered SVG dimensions are invalid");let a=Math.min(2,16384/e,16384/t,Math.sqrt(0x1800000/(e*t)));if(a<1){let a=e*t;return a>0x1800000?l("output_pixels",`PNG output exceeds ${String(0x1800000)} pixels at minimum scale`,a,0x1800000):l("output_dimension","rendered SVG dimension exceeds the PNG limit at minimum scale",Math.max(e,t),16384)}return Math.max(1,Math.floor(1e3*a)/1e3)}a.d(t,{Gd:()=>r,Ts:()=>i,Yu:()=>n,jA:()=>o},{Z4:6291456,ce:0x1800000})},6982(e){e.exports=t("crypto")},7598(e){e.exports=t("node:crypto")},76(e,t,a){let s=a(9095),l=process.env;function i(e){return"string"==typeof e?!!l[e]:"env"in e?l[e.env]&&l[e.env].includes(e.includes):"any"in e?e.any.some(function(e){return!!l[e]}):Object.keys(e).every(function(t){return l[t]===e[t]})}Object.defineProperty(t,"_vendors",{value:s.map(function(e){return e.constant})}),t.name=null,t.isPR=null,t.id=null,"false"!==l.CI&&s.forEach(function(e){let a=(Array.isArray(e.env)?e.env:[e.env]).every(function(e){return i(e)});t[e.constant]=a,a&&(t.name=e.name,t.isPR=function(e){switch(typeof e.pr){case"string":return!!l[e.pr];case"object":if("env"in e.pr)if("any"in e.pr)return e.pr.any.some(function(t){return l[e.pr.env]===t});else return e.pr.env in l&&l[e.pr.env]!==e.pr.ne;if("any"in e.pr)return e.pr.any.some(function(e){return!!l[e]});return i(e.pr);default:return null}}(e),t.id=e.constant)}),t.isCI=!!("false"!==l.CI&&(l.BUILD_ID||l.BUILD_NUMBER||l.CI||l.CI_APP_ID||l.CI_BUILD_ID||l.CI_BUILD_NUMBER||l.CI_NAME||l.CONTINUOUS_INTEGRATION||l.RUN_ID||t.name))},485(e,t,a){e.exports=a(76).isCI},664(e,t,a){a.d(t,{CN:()=>g,BC:()=>m,Ie:()=>z,pb:()=>B,i8:()=>k,g9:()=>b,Uk:()=>M,Ts:()=>u,CZ:()=>v,ET:()=>y,HV:()=>w,T9:()=>P,Tj:()=>L,YW:()=>f,of:()=>_,jB:()=>A,TS:()=>S,di:()=>C});var s=a(7876),l=a(1594);let i=e=>e.length>0;var o=a(9771),r=a(592),n=a(1587),c=a(2860),d=a(915),p=a(9315);let h=globalThis.Array,g=e=>new h(o.S(e)),u=e=>h.isArray(e)?e:h.from(e);d.Wo,n.toArray;let f=(0,l.XY)(2,(e,{onEmpty:t,onNonEmpty:a})=>y(e)?a(e):t()),m=(0,l.XY)(2,(e,t)=>[...e,t]);h.isArray;let v=i,y=i,w=e=>y(e)?n.some(x(e)):n.none(),x=e=>e[e.length-1],b=(0,l.XY)(2,(e,t)=>{let a=0;for(let s of e){if(t(s,a))return n.some(a);a++}return n.none()}),k=r.i8,M=(0,l.XY)(2,(e,t)=>{let a=u(e);for(let e=a.length-1;e>=0;e--){let s=a[e],l=t(s,e);if("boolean"==typeof l){if(l)return n.some(s)}else if(n.isSome(l))return l}return n.none()}),C=(0,l.XY)(2,(e,t)=>{let a=h.from(e);return a.sort(t),a}),z=()=>[],_=e=>[e],L=(0,l.XY)(2,(e,t)=>e.map(t)),B=(0,l.XY)(2,(e,t)=>{let a=u(e),s=[];for(let e=0;e<a.length;e++)t(a[e],e)&&s.push(a[e]);return s}),A=(0,l.XY)(2,(e,t)=>{let a=[],s=[],l=0;for(let i of e){let e=t(i,l++);p.oJ(e)?a.push(e.success):s.push(e.failure)}return[a,s]}),S=(0,l.XY)(3,(e,t,a)=>u(e).reduce((e,t,s)=>a(e,t,s),t));c.O3;let P=s.O3},5053(e,t,a){var s=a(9519),l=a(7876),i=a(1594),o=a(1587),r=a(2860),n=a(4233),c=a(636);let d=globalThis.BigInt,p=d(0);n.sI;let h=(0,i.XY)(2,(e,t)=>e+t),g=r.Qw,u=l.Qw,f=r.hl(g),m=r.bi(g),v=r.yJ(g),y=r.OW(g),w=r.Bt(g),x=r.qE(g),b=r.jk(g),k=r.T9(g),M=c.L((e,t)=>e+t,p),C=s.T9(g),z=s.jk(g);a.d(t,{},{K0:z,OW:y,Ro:e=>e>d(Number.MAX_SAFE_INTEGER)||e<d(Number.MIN_SAFE_INTEGER)?o.none():o.some(Number(e)),T9:k,Tq:w,aD:M,bi:m,cz:h,hl:f,jk:b,pH:g,qE:x,rs:u,sO:C,yJ:v})},3265(e,t,a){var s=a(5053),l=a(1587);let i=BigInt(0),o=BigInt(1),r=BigInt(1e3),n=BigInt(1024),c=[{symbol:"B",factor:o,names:["B","byte","bytes"]},{symbol:"kB",factor:r,names:["kB","kilobyte","kilobytes"]},{symbol:"MB",factor:r**BigInt(2),names:["MB","megabyte","megabytes"]},{symbol:"GB",factor:r**BigInt(3),names:["GB","gigabyte","gigabytes"]},{symbol:"TB",factor:r**BigInt(4),names:["TB","terabyte","terabytes"]},{symbol:"PB",factor:r**BigInt(5),names:["PB","petabyte","petabytes"]},{symbol:"EB",factor:r**BigInt(6),names:["EB","exabyte","exabytes"]},{symbol:"ZB",factor:r**BigInt(7),names:["ZB","zettabyte","zettabytes"]},{symbol:"YB",factor:r**BigInt(8),names:["YB","yottabyte","yottabytes"]},{symbol:"RB",factor:r**BigInt(9),names:["RB","ronnabyte","ronnabytes"]},{symbol:"QB",factor:r**BigInt(10),names:["QB","quettabyte","quettabytes"]}],d=[c[0],{symbol:"KiB",factor:n,names:["KiB","kibibyte","kibibytes"]},{symbol:"MiB",factor:n**BigInt(2),names:["MiB","mebibyte","mebibytes"]},{symbol:"GiB",factor:n**BigInt(3),names:["GiB","gibibyte","gibibytes"]},{symbol:"TiB",factor:n**BigInt(4),names:["TiB","tebibyte","tebibytes"]},{symbol:"PiB",factor:n**BigInt(5),names:["PiB","pebibyte","pebibytes"]},{symbol:"EiB",factor:n**BigInt(6),names:["EiB","exbibyte","exbibytes"]},{symbol:"ZiB",factor:n**BigInt(7),names:["ZiB","zebibyte","zebibytes"]},{symbol:"YiB",factor:n**BigInt(8),names:["YiB","yobibyte","yobibytes"]}],p=new Map([...c,...d.slice(1)].flatMap(e=>e.names.map(t=>[t,e]))),h=e=>{throw Error(`Invalid ByteSize: ${e}`)},g=e=>!Number.isSafeInteger(e)||e<0?h(`expected a non-negative safe integer, received ${e}`):BigInt(e),u=e=>{let t=/^\s*(\d+)(?:\.(\d+))?\s*([A-Za-z]+)\s*$/.exec(e);if(null===t)return h(`unsupported syntax ${JSON.stringify(e)}`);let a=p.get(t[3]);if(void 0===a)return h(`unsupported unit ${JSON.stringify(t[3])}`);let s=t[2]??"",l=BigInt(10)**BigInt(s.length),o=BigInt(t[1]+s)*a.factor;return o%l!==i?h(`${JSON.stringify(e)} does not represent an integral number of bytes`):o/l},f=l.liftThrowable(u),m=e=>{switch(typeof e){case"bigint":if(e<i)return h(`expected a non-negative bigint, received ${e}`);return e;case"number":return g(e);case"string":return u(e)}return h(`unsupported input ${e}`)},v=l.liftThrowable(m),y=s.Ro;s.pH,s.rs,s.Tq,s.jk,s.T9,s.qE,s.hl,s.bi,s.yJ,s.OW,s.cz,s.aD,s.sO,s.K0,a.d(t,{},{Dg:e=>e,Ro:y,bN:m,ee:e=>"bigint"==typeof e?m(e):g(e),lX:v,sH:f,yp:e=>"bigint"==typeof e&&e>=i})},719(e,t,a){var s=a(2449),l=a(6297);s.PX,s.B4,s.Aj,s.Wg;let i=s.lC;s.Xb,s.ik;let o=s.b5;s.DH;let r=s.OE,n=s.Iu;l.nIy,l.ORc;let c=l.nn5,d=l.O$X;s.h2;let p=l.ReC;l.myX,l.QE5,l.khU;let h=l.L$u;l.gpn,l.k7S,l.BbX;let g=l.prj;l.tU5,l.h74,l.Bou,l.RJ6;let u=l.GyP;s.PW,s.qB,s.Xm;let f=s.$L;s.q_;let m=s.RS,v=s.Vw;l.DQo,l.c8t,l.MUS,l.t8c,l._y;let y=l.qwd;l.ASO,l.F7W,l.Aub,l.cOF,l.Rft,l.RD4,l.Kkt,l.PnV;let w=l.Bk6;s.Eh,l.tQ6,l.On5,a.d(t,{},{$L:f,Bk:w,F_:n,L$:h,RS:m,Tj:d,Vw:v,fJ:r,iw:p,j9:u,kO:o,lC:i,nn:c,pr:g,qw:y})},4238(e,t,a){var s=a(6297);s.a1U,s.RKA;let l=s.Rud;s.s0X,s.T13,a.d(t,{},{Ru:l})},9519(e,t,a){function s(e){return{combine:e}}function l(e){return s((t,a)=>-1===e(t,a)?t:a)}function i(e){return s((t,a)=>1===e(t,a)?t:a)}a.d(t,{L8:()=>s,T9:()=>i,jk:()=>l})},1179(e,t,a){var s=a(3811),l=a(3332),i=a(1594),o=a(5033),r=a(2449),n=a(1587),c=a(4233);let d="~effect/Context/Service",p=function(){let e=function(){};Object.setPrototypeOf(e,h);let t=(t,a)=>(e.key=t,a?.defaultValue&&(e[u]=u,e.defaultValue=a.defaultValue),a?.make&&(e.make=a.make),a?.fiberCached&&g.add(t),e);return arguments.length>0?t(arguments[0],arguments[1]):t},h={[d]:d,...s.bp({label:"Service",evaluate(e){return(0,r.xt)(V(e.context,this))}}),toJSON(){return{_id:"Service",key:this.key}},of:e=>e,context(e){return _(this,e)},use(e){return(0,r.R6)(t=>e(V(t.context,this)))},useSync(e){return(0,r.R6)(t=>(0,r.xt)(e(V(t.context,this))))}},g=new Set,u="~effect/Context/Reference",f="~effect/Context",m=(e,t,a,s)=>{let l=Object.create(k);return l.cacheRoot=e??l,l.base=t,l.overlay=a,l.depth=s,l._flat=void 0,l.baseHits=0,l},v=(e,t)=>{t&&(v(e,t.parent),e.set(t.key,t.value))},y=e=>{if(e._flat)return e._flat;if(!e.overlay)return e._flat=e.base;let t=new Map(e.base);return v(t,e.overlay),e._flat=t},w=Symbol(),x=(e,t)=>{for(let a=e.overlay;a;a=a.parent)if(a.key===t)return a.value;let a=e.base.get(t);return void 0!==a||e.base.has(t)?(e.overlay&&++e.baseHits>=e.base.size&&e.baseHits>=8&&(e.base=y(e),e.overlay=void 0,e.depth=0),a):w},b=e=>m(void 0,e,void 0,0),k={get mapUnsafe(){return y(this)},...r.fU,[f]:{_Services:e=>e},toJSON(){return{_id:"Context",services:Array.from(this.mapUnsafe).map(([e,t])=>({key:e,value:t}))}},[l.HR](e){if(!M(e))return!1;let t=this.mapUnsafe,a=e.mapUnsafe;if(t.size!==a.size)return!1;for(let[e,s]of t)if(!a.has(e)||!l.aI(s,a.get(e)))return!1;return!0},[o.HR](){return o.ai(this.mapUnsafe.size)}},M=e=>(0,c.i5)(e,f),C=e=>!!e[u],z=b(new Map),_=(e,t)=>b(new Map([[e.key,t]])),L=(0,i.XY)(3,(e,t,a)=>B(e,t.key,a)),B=(e,t,a)=>{let s=g.has(t)?void 0:e.cacheRoot;if(e.depth>=8){let l=new Map(e.mapUnsafe);return l.set(t,a),m(s,l,void 0,0)}return m(s,e.base,{key:t,value:a,parent:e.overlay},e.depth+1)},A=(0,i.XY)(2,(e,t)=>S(e,t.key)),S=(e,t)=>{let a=x(e,t);return a===w?void 0:a},P=(0,i.XY)(2,(e,t)=>{let a=x(e,t.key);if(a===w){if(C(t))return q(t);throw F(t)}return a}),V=P,H="~effect/Context/defaultValue",q=e=>H in e?e[H]:e[H]=e.defaultValue(),F=e=>{let t=Error(`Service not found${e.key?`: ${String(e.key)}`:""}`);if(t.stack){let e=t.stack.split("\n");e.splice(1,3),t.stack=e.join("\n")}return t},I=(0,i.XY)(2,(e,t)=>{let a=x(e,t.key);return a!==w?n.some(a):C(t)?n.some(q(t)):n.none()}),E=(0,i.XY)(2,(e,t)=>{let a;return 0===e.mapUnsafe.size?t:0===t.mapUnsafe.size?e:((e=>t.mapUnsafe.forEach((t,a)=>e.set(a,t)))(a=new Map(e.mapUnsafe)),b(a))});a.d(t,{},{Ie:()=>z,Jt:V,L8:_,LZ:b,Or:p,Pf:(e,t)=>e.cacheRoot===t.cacheRoot,Ub:S,Um:(...e)=>{let t=new Map;for(let a=0;a<e.length;a++)e[a].mapUnsafe.forEach((e,a)=>{t.set(a,e)});return b(t)},WQ:L,Y6:A,aE:M,fp:P,h1:E,kl:p,om:I})},4942(e,t,a){var s=a(2449),l=a(2275),i=a(1554),o=a(4233);let r=class extends i.Xs{constructor(e){super(),e&&l.z(this,e)}};function n(){if(1==arguments.length){let e=arguments[0];return function(t){return e[t._tag](t)}}let e=arguments[0],t=arguments[1];return t[e._tag](e)}let c=s.$D,d=s.rN;a.d(t,{},{$D:c,Ij:()=>new Proxy({},{get:(e,t,a)=>"$is"===t?o.$J:"$match"===t?n:e=>({...e,_tag:t})}),Xs:r,rN:d})},9237(e,t,a){var s=a(1594),l=a(6297),i=a(1554);let o={"~effect/Deferred":{_A:s.D_,_E:s.D_},pipe(){return(0,i.tT)(this,arguments)}},r=function(){this.resumes=void 0,this.effect=void 0};r.prototype=o;let n=e=>void 0!==e.effect;a.d(t,{},{$L:e=>l.OH5(()=>n(e)),$w:(e,t)=>{if(e.effect)return!1;if(e.effect=t,e.resumes){let a=e.resumes;e.resumes=void 0;for(let e=0;e<a.length;e++)a[e](t)}return!0},LZ:()=>new r,NJ:n,Tx:e=>l.E2r(t=>e.effect?t(e.effect):(e.resumes??=[],e.resumes.push(t),l.OH5(()=>{let a=e.resumes;if(void 0===a)return;let s=a.indexOf(t);s>=0&&a.splice(s,1)})))})},3614(e,t,a){var s=a(3332),l=a(1594),i=a(5033),o=a(3952),r=a(2860),n=a(1554),c=a(4233);let d="~effect/Duration",p=BigInt(0),h=BigInt(1),g=BigInt(2),u=BigInt(10),f=BigInt(24),m=BigInt(60),v=BigInt(1e3),y=BigInt(1e6),w=e=>BigInt(e<0?Math.ceil(e-.5):Math.floor(e+.5)),x=(e,t)=>{let a=e.indexOf(".");if(-1===a)return BigInt(e)*t;let s="-"===e[0],l=e.slice(a+1),i=u**BigInt(l.length),o=(BigInt(e.slice(+!!s,a))*i+BigInt(l))*t,r=o/i+(o%i*g>=i?h:p);return s?-r:r},b=/^(-?\d+(?:\.\d+)?)\s+(nanos?|micros?|millis?|seconds?|minutes?|hours?|days?|weeks?)$/,k=e=>{switch(typeof e){case"number":return q(e);case"bigint":return H(e);case"string":{if("Infinity"===e)return P;if("-Infinity"===e)return V;let t=b.exec(e);if(!t)break;let[a,s,l]=t;if("nano"===l||"nanos"===l)return H(x(s,h));if("micro"===l||"micros"===l)return H(x(s,v));let i=Number(s);switch(l){case"milli":case"millis":return q(i);case"second":case"seconds":return F(i);case"minute":case"minutes":return I(i);case"hour":case"hours":return E(i);case"day":case"days":return O(i);case"week":case"weeks":return U(i)}break}case"object":{if(null===e)break;if(d in e)return e;if(Array.isArray(e)){if(2!==e.length||!e.every(c.Et))return M(e);if(Number.isNaN(e[0])||Number.isNaN(e[1]))return S;if(-1/0===e[0]||-1/0===e[1])return V;if(1/0===e[0]||1/0===e[1])return P;return B(w(1e9*e[0]+e[1]))}let t=0;if(e.weeks&&(t+=6048e5*e.weeks),e.days&&(t+=864e5*e.days),e.hours&&(t+=36e5*e.hours),e.minutes&&(t+=6e4*e.minutes),e.seconds&&(t+=1e3*e.seconds),e.milliseconds&&(t+=e.milliseconds),!e.microseconds&&!e.nanoseconds)return B(t);return B(w(1e6*t+(e.microseconds??0)*1e3+(e.nanoseconds??0)))}}return M(e)},M=e=>{throw Error(`Invalid Input: ${e}`)},C={_tag:"Millis",millis:0},z={_tag:"Infinity"},_={_tag:"NegativeInfinity"},L={[d]:d,[i.HR](){switch(this.value._tag){case"Millis":{let e=1e6*this.value.millis;return Number.isFinite(e)?i.tW(w(e)):i.ai(this.value.millis)}case"Nanos":return i.tW(this.value.nanos);default:return i.QK(this.value)}},[s.HR](e){return A(e)&&D(this,e)},toString(){switch(this.value._tag){case"Infinity":return"Infinity";case"NegativeInfinity":return"-Infinity";case"Nanos":return`${this.value.nanos} nanos`;case"Millis":return`${this.value.millis} millis`}},toJSON(){switch(this.value._tag){case"Millis":return{_id:"Duration",_tag:"Millis",millis:this.value.millis};case"Nanos":return{_id:"Duration",_tag:"Nanos",nanos:String(this.value.nanos)};case"Infinity":return{_id:"Duration",_tag:"Infinity"};case"NegativeInfinity":return{_id:"Duration",_tag:"NegativeInfinity"}}},[o.FX](){return this.toJSON()},pipe(){return(0,n.tT)(this,arguments)}},B=e=>{let t=Object.create(L);return"number"==typeof e?isNaN(e)||0===e||Object.is(e,-0)?t.value=C:Number.isFinite(e)?Number.isInteger(e)?t.value={_tag:"Millis",millis:e}:t.value={_tag:"Nanos",nanos:w(1e6*e)}:t.value=e>0?z:_:e===p?t.value=C:t.value={_tag:"Nanos",nanos:e},t},A=e=>(0,c.i5)(e,d),S=B(0),P=B(1/0),V=B(-1/0),H=e=>B(e),q=e=>B(e),F=e=>B(1e3*e),I=e=>B(6e4*e),E=e=>B(36e5*e),O=e=>B(864e5*e),U=e=>B(6048e5*e),X=e=>{let t=k(e);switch(t.value._tag){case"Infinity":case"NegativeInfinity":throw Error("Cannot convert infinite duration to nanos");case"Nanos":return t.value.nanos;case"Millis":return w(1e6*t.value.millis)}},Y=(0,l.XY)(2,(e,t)=>{switch(e.value._tag){case"Millis":return t.onMillis(e.value.millis);case"Nanos":return t.onNanos(e.value.nanos);case"Infinity":return t.onInfinity();case"NegativeInfinity":return(t.onNegativeInfinity??t.onInfinity)()}}),T=(0,l.XY)(3,(e,t,a)=>"Infinity"===e.value._tag||"NegativeInfinity"===e.value._tag||"Infinity"===t.value._tag||"NegativeInfinity"===t.value._tag?a.onInfinity(e,t):"Millis"===e.value._tag?"Millis"===t.value._tag?a.onMillis(e.value.millis,t.value.millis):a.onNanos(X(e),t.value.nanos):a.onNanos(e.value.nanos,X(t))),Z=r.L8((e,t)=>T(e,t,{onMillis:(e,t)=>e<t?-1:+(e>t),onNanos:(e,t)=>e<t?-1:+(e>t),onInfinity:(e,t)=>e.value._tag===t.value._tag?0:"Infinity"===e.value._tag?1:"NegativeInfinity"===e.value._tag||"Infinity"===t.value._tag?-1:1})),G=r.bi(Z),D=(0,l.XY)(2,(e,t)=>T(e,t,{onMillis:(e,t)=>e===t,onNanos:(e,t)=>e===t,onInfinity:(e,t)=>e.value._tag===t.value._tag})),R=e=>{if("Infinity"===e.value._tag)return"Infinity";if("NegativeInfinity"===e.value._tag)return"-Infinity";if((e=>{switch(e.value._tag){case"Millis":return 0===e.value.millis;case"Nanos":return e.value.nanos===p;case"Infinity":case"NegativeInfinity":return!1}})(e))return"0";if((e=>{switch(e.value._tag){case"Millis":return e.value.millis<0;case"Nanos":return e.value.nanos<p;case"NegativeInfinity":return!0;case"Infinity":return!1}})(e))return"-"+R((e=>{switch(e.value._tag){case"Infinity":case"NegativeInfinity":return P;case"Millis":return e.value.millis<0?B(-e.value.millis):e;case"Nanos":return e.value.nanos<p?B(-e.value.nanos):e}})(e));let t=(e=>{if("Infinity"===e.value._tag)return{days:1/0,hours:1/0,minutes:1/0,seconds:1/0,millis:1/0,nanos:1/0};if("NegativeInfinity"===e.value._tag)return{days:-1/0,hours:-1/0,minutes:-1/0,seconds:-1/0,millis:-1/0,nanos:-1/0};let t=X(e),a=t<p,s=a?-t:t,l=s/y,i=l/v,o=i/m,r=o/m,n=a?-1:1;return{days:n*Number(r/f),hours:n*Number(r%f),minutes:n*Number(o%m),seconds:n*Number(i%m),millis:n*Number(l%v),nanos:n*Number(s%y)}})(e),a=[];return 0!==t.days&&a.push(`${t.days}d`),0!==t.hours&&a.push(`${t.hours}h`),0!==t.minutes&&a.push(`${t.minutes}m`),0!==t.seconds&&a.push(`${t.seconds}s`),0!==t.millis&&a.push(`${t.millis}ms`),0!==t.nanos&&a.push(`${t.nanos}ns`),a.join(" ")};a.d(t,{},{GP:R,MI:e=>"Infinity"!==e.value._tag&&"NegativeInfinity"!==e.value._tag,Tn:P,YA:F,bN:k,bi:G,cF:H,fP:e=>Y(k(e),{onMillis:e=>e/1e3,onNanos:e=>Number(e)/1e9,onInfinity:()=>1/0,onNegativeInfinity:()=>-1/0}),kE:e=>Y(k(e),{onMillis:l.D_,onNanos:e=>Number(e)/1e6,onInfinity:()=>1/0,onNegativeInfinity:()=>-1/0}),n$:A,ne:q,qv:V,v_:S})},2842(e,t,a){a.d(t,{Q56:()=>ex,jGc:()=>eb,U9h:()=>ek,Q7R:()=>k,hgn:()=>T,swY:()=>eZ,Muk:()=>eS,as:()=>j,E2r:()=>P,MfU:()=>N,Tyx:()=>K,osR:()=>Q,KuX:()=>W,loE:()=>J,RKA:()=>eX,_32:()=>eP,F_Q:()=>E,_r7:()=>eG,yeE:()=>eM,NS5:()=>R,fJG:()=>q,ATB:()=>F,pVV:()=>I,qIB:()=>Y,Ab9:()=>ej,fn:()=>eU,D9k:()=>eO,vCS:()=>eN,jJl:()=>M,i4r:()=>eA,ar0:()=>eH,x6Z:()=>eq,yUA:()=>X,JkU:()=>H,XeO:()=>ei,GaK:()=>e_,yw5:()=>b,vVN:()=>eT,FFw:()=>eY,TjK:()=>$,q7Y:()=>e$,jkJ:()=>eD,xm_:()=>ee,Z9x:()=>eR,YWq:()=>ed,khu:()=>ep,tvg:()=>eh,ZmZ:()=>V,S5A:()=>eC,cfM:()=>ez,uKv:()=>D,QgK:()=>et,ivC:()=>z,Gte:()=>eg,PpN:()=>eu,PfK:()=>em,KT6:()=>ec,Ket:()=>G,L5P:()=>el,MY7:()=>eF,eJC:()=>eI,lKS:()=>eE,z8E:()=>ev,P1j:()=>ey,Pxi:()=>ew,Nav:()=>ef,yy4:()=>en,PyW:()=>L,DYE:()=>B,OH5:()=>A,Mim:()=>Z,dGm:()=>es,sFT:()=>ea,wRz:()=>eo,mgX:()=>er,SvU:()=>O,$mh:()=>_,rfi:()=>eL,FcF:()=>eB,rIH:()=>S,iMI:()=>C,R6R:()=>U,fRP:()=>eV});var s=a(1594),l=a(2449),i=a(6297),o=(a(3614),a(1179));a(9315);var r=a(6771),n=a(5633);let c=(0,s.XY)(e=>(0,l.yw)(e[0]),(e,t,a)=>{let s;return o.aE(t)?i.PpN(e,t):(s=Array.isArray(t)?n.Um(...t):t,i.Pxi(t=>i.qIB(a?.local?n.H7(s,n.j6(),t):n.LT(s,t),t=>i.PpN(e,t))))});var d=a(1587),p=a(3753),h=a(6481);(e,t,a)=>i.qIB(r.xn(t),t=>{let s=r.d3.defaultValue();return i.h_t(i.i4r(i.Mim(i.qIB(i.DYE(()=>i.PfK(e,r.d3,s)),t),e=>i.OH5(()=>{s=e})),{disableYield:!0}),e=>l.$L(e)?i.PyW(e.value):a(e,0===s.attempt?d.none():d.some(s)))});let g=(0,s.XY)(3,(e,t,a)=>i.qIB(r.xn(t),t=>{let s,l=r.d3.defaultValue(),o=i.h_t(i.DYE(()=>i.PfK(e,r.d3,l)),e=>(s=e,i.qIB(t(e),e=>(l=e,o))));return p.m8(o,e=>(0,h.s)(()=>a(s,e)))})),u=(0,s.XY)(2,(e,t)=>g(e,"function"==typeof t?t(s.D_):r.GM(t)?t:m(t),i.fJG)),f=r.le(r.i4),m=e=>{let t=e.schedule?r.le(e.schedule):f;return e.while&&(t=r.E6(t,({input:t})=>{let a=e.while(t);return l.yw(a)?a:i.PyW(a)})),e.until&&(t=r.E6(t,({input:t})=>{let a=e.until(t);return l.yw(a)?i.TjK(a,e=>!e):i.PyW(!a)})),void 0!==e.times&&(t=r.E6(t,({attempt:t})=>i.PyW(t<=e.times))),t},v=r.t5(1);var y=a(2275);let w=a(3332).Xq({_E:e=>e,_A:e=>e,_R:e=>e});({...l.In,"~effect/Request":w}),a(3909);var x=a(4600);l.$n;let b=l.yw,k=i.Q7R;i.jBG,i.TSs,i.tfT,i.i8i,i.kAe;let M=i.jJl;i.d5f;let C=i.iMI,z=i.ivC,_=i.$mh,L=i.PyW;i.lwU,i.nGE;let B=i.DYE,A=i.OH5,S=i.rIH;i.Vxk;let P=i.E2r,V=i.ZmZ;i.Do,i.JrD,i.uVU,i.oIE;let H=i.JkU,q=i.fJG;i.gOk;let F=i.ATB,I=i.pVV,E=i.F_Q,O=i.SvU;i.m9E,i.KN3;let U=l.R6;l.Hq;let X=i.yUA;i.sVm,i.pkL,i.bJ;let Y=i.qIB;i.Bqz;let T=i.hgn,Z=i.Mim,G=i.Ket,D=i.uKv,R=i.NS5,$=i.TjK,j=i.as;i.Xx$,i.NLW,i.UUz,i.yU6,i.OYO;let N=i.h_t,W=i.KuX,J=i.loE;i.AXC,i.zt4,i.scW;let K=i.Tyx;i.Fig,i.XWm;let Q=i.osR;i.U9Y,i.sJf,i.rNk;let ee=i.xm_;i.UcN;let et=i.QgK,ea=i.sFT;i.k$L;let es=i.dGm;i.cA6,i.bKC,i.nAi,i.u4Y;let el=u;i._Sg;let ei=i.XeO;i.GrF,i.$$g,i.DM4,i.Dd;let eo=i.wRz;i.D52;let er=i.mgX;i.cbG;let en=i.yy4;i.ayu,i.Vdx,i.FfP,i.O4F;let ec=i.KT6;i.pbD,i.x1Q,i.E8K,i.Pm0,i.VtY,i.W$I,i.ahH,i.z7s;let ed=i.YWq;i.G$Q,i.D$$,i.NZb,i.wR5;let ep=i.khu,eh=i.tvg;i.N6O,i.oJd,i._OA,i.sxi;let eg=c,eu=i.PpN;i.oao,i.euC;let ef=i.Nav;i.r_d,i.bUZ,i.L_I;let em=i.PfK;i.c7E;let ev=i.z8E,ey=i.P1j,ew=i.Pxi,ex=i.Q56;i.N24;let eb=i.jGc,ek=i.U9h,eM=i.yeE,eC=i.S5A;i.BeE,i.iKM,i.r7h;let ez=i.cfM;i.fGe,i.uRq,i.PO3,i.Rgn,i.CJw;let e_=i.GaK;i.Inz,i.nAr;let eL=i.rfi,eB=i.FcF;i.eMl,i.dsN;let eA=i.i4r;i.aAq,i.Xrv,i.kJM,i._o1,i.nDN,i.MaT;let eS=i.Muk;i.ww9;let eP=i._32;i.Wj8,i.Fu6,i.WbR,i.A_r,i.Z98,i.Rd$,i.gvr;let eV=i.fRP;i.zr8,i.hq,i.zhn;let eH=i.ar0,eq=i.x6Z;i.yxg,i.PCg,i.pEE,i.ABT;let eF=i.MY7,eI=i.eJC;i.lSz,i.bPG,i.pR5,i.v2Q,i.NpQ,i.jqV,i.HZF,i.lE;let eE=i.lKS;i.rfH;let eO=i.D9k,eU=i.fn,eX=i.RKA;i.lIX;let eY=i.lIX("Warn"),eT=i.lIX("Error"),eZ=(0,s.XY)(e=>b(e[0]),(e,...t)=>i.bUZ(e,x.iL,e=>{let a=1===t.length?{...e,...t[0]}:{...e};return 1===t.length||y.x(a,t[0],t[1]),a}));i.gsV;let eG=(e,t,a)=>(...s)=>P(l=>{try{e(...s,(e,a)=>{e?l(q(t?t(e,s):e)):l(L(a))})}catch(e){l(a?q(a(e,s)):E(e))}}),eD=i.jkJ,eR=i.Z9x,e$=i.q7Y,ej=i.Ab9;i.UVN;let eN=i.vCS},3811(e,t,a){var s=a(2449);a.d(t,{},{bp:e=>(0,s.yj)({op:e.label,[s._3]:e.evaluate})})},3332(e,t,a){var s=a(5033),l=a(5844),i=a(4233);let o="~effect/Equal";function r(){return 1==arguments.length?e=>n(e,arguments[0]):n(arguments[0],arguments[1])}function n(e,t){if(e===t)return!0;if(null==e||null==t)return!1;let a=typeof e;return a===typeof t&&("number"===a&&e!=e&&t!=t||!("object"!==a&&"function"!==a||l.J3.has(e)||l.J3.has(t))&&function(e,t){let a=d.length;for(let s=a;s-- >0;)if(d[s]===e&&p[s]===t)return!0;if(a)return c(e,t);let s=h.get(e);s||h.set(e,s=new WeakMap);let l=s.get(t);return void 0===l&&s.set(t,l=c(e,t)),l}(e,t))}function c(e,t){d.push(e),p.push(t);try{return function(e,t){if(s.tW(e)!==s.tW(t))return!1;if(e instanceof Date){if(!(t instanceof Date))return!1;let a=e.getTime(),s=t.getTime();return a===s||Number.isNaN(a)&&Number.isNaN(s)}if(e instanceof RegExp)return t instanceof RegExp&&e.toString()===t.toString();let a=v(e);if(a!==v(t)||"function"==typeof e&&!a)return!1;if(a)return e[o](t);if(Array.isArray(e))return!!Array.isArray(t)&&e.length===t.length&&function(e,t){for(let a=0;a<e.length;a++)if(!n(e[a],t[a]))return!1;return!0}(e,t);if(ArrayBuffer.isView(e)){let a=e instanceof DataView;return!!ArrayBuffer.isView(t)&&e.byteLength===t.byteLength&&a===t instanceof DataView&&(a?g((0,l.j)(e),(0,l.j)(t)):g(e,t))}if(e instanceof Map)return t instanceof Map&&e.size===t.size&&u(e,t,f,m);else if(e instanceof Set)return t instanceof Set&&e.size===t.size&&u(e,t,s.tW,n);var i=e,r=t;let c=(0,l.Xp)(i),d=(0,l.Xp)(r);if(c.size!==d.size)return!1;for(let e of c)if(!d.has(e)||!n(i[e],r[e]))return!1;return!0}(e,t)}finally{d.pop(),p.pop()}}let d=[],p=[],h=new WeakMap;function g(e,t){if(e.length!==t.length)return!1;for(let a=0;a<e.length;a++)if(e[a]!==t[a])return!1;return!0}function u(e,t,a,s){let l=new Map;for(let e of t){let t=a(e),s=l.get(t);s?s.push(e):l.set(t,[e])}e:for(let t of e){let e=l.get(a(t));if(e){for(let a=0;a<e.length;a++)if(s(t,e[a])){e[a]=e[e.length-1],e.pop();continue e}}return!1}return!0}let f=e=>s.tW(e[0]),m=(e,t)=>n(e[0],t[0])&&n(e[1],t[1]),v=e=>(0,i.i5)(e,o);a.d(t,{aI:()=>r},{HR:o,Xq:e=>(l.J3.add(e),e),jI:()=>r})},7876(e,t,a){let s=e=>(t,a)=>t===a||e(t,a),l=(e,t)=>e===t,i=s((e,t)=>globalThis.Number.isNaN(e)&&globalThis.Number.isNaN(t));function o(e){return s((t,a)=>{if(t.length!==a.length)return!1;for(let s=0;s<t.length;s++)if(!e[s](t[s],a[s]))return!1;return!0})}function r(e){return s((t,a)=>{if(t.length!==a.length)return!1;for(let s=0;s<t.length;s++)if(!e(t[s],a[s]))return!1;return!0})}function n(e){let t=Reflect.ownKeys(e);return s((a,s)=>{for(let l of t)if(!e[l](a[l],s[l]))return!1;return!0})}a.d(t,{O3:()=>r,_k:()=>n,rd:()=>o},{L8:s,Qw:l,YZ:()=>l,wN:i})},6526(e,t,a){var s=a(2449),l=a(6297);s.IH,s.b9;let i=s.xt,o=s.cb,r=s.Rk;s.V2,l._sz;let n=l.x5l,c=l.CoE,d=l.VE1;l._mh,l.YDM,l.lNM,l.K$2,l.GUt,l.HIt,l.yJo,l._OD,l.jCT,l.Wtn,l.v9O,l.zPu,l.EkE,l.Hox,l.ely,l.kMI,l.Sv3,l.lgw,a.d(t,{},{AT:o,N6:d,Py:i,fJ:r,oJ:c,rI:n})},1958(e,t,a){var s=a(4233),l=a(1279);function i(e,t){let a=t?.space??0,i=new WeakSet,n=a?"number"==typeof a?" ".repeat(a):a:"",p=(e,t)=>{let a=e?.constructor;return a&&a!==Object.prototype.constructor&&a.name?`${a.name}(${t})`:t};return function e(a,h=0){try{return function(a,h=0){if("string"==typeof a)return JSON.stringify(a);if("number"==typeof a||null==a||"boolean"==typeof a||"symbol"==typeof a)return String(a);if("bigint"==typeof a)return String(a)+"n";if("object"==typeof a||"function"==typeof a){let g;if(i.has(a))return o;if(i.add(a),l.uC in a)g=e((0,l.f6)(a),h);else if(Array.isArray(a)){let t,s;g=!n||a.length<=1?`[${a.map(t=>e(t,h)).join(",")}]`:`[
|
|
236
|
+
`)}},c=new Proxy(globalThis.console,{get(e,t,a){if("log"===t)return(...t)=>{(1!==t.length||""!==t[0])&&e.log(...t)};let s=Reflect.get(e,t,a);return"function"==typeof s?s.bind(e):s}}),pL(g9,{version:"0.17.2"})(e).pipe(X.sFT(e=>eu.i5(e,ru)&&"ShowHelp"!==e._tag?rh(n.formatErrors([e])):X.rIH),X.PfK(ch,{builtIns:[co,cr,cc]}),X.PfK(nl,n),X.PfK(rd,c))).pipe(X.khu({onFailure:e=>X.JkU(function*(){let t,a=ee.getOrUndefined(U.L$(e));if(a instanceof go)return a.exitCode;if(a instanceof sV)return 7;let s=function(e){if(eu.i5(e,ru))return"ShowHelp"===e._tag?2*(e.errors.length>0):2}(a);if(void 0!==s)return s;let l=yield*gi;return yield*l.stderr((t={code:"internal_error",message:"Sketchi could not complete the command.",hint:"Retry once; if it persists, report the command and inputs without secrets."},"json"===d?s4({ok:!1,command:"sketchi",error:t}):gc(t))).pipe(X.MfU(()=>X.rIH)),1}),onSuccess:()=>X.PyW(0)}))}),ut=j.Um(sP.Txp,(0,sP.rRT)({createId:e=>`${e}_offline_cli`,icons:ij})),ua=j.Gt(s9,ut),us=j.Gt(lp,ut),ul=j.Um(li,is),ui=j.Gt(im,ul),uo=j.Gt(iX,j.Um(ui,iI)),ur=j.Gt(gL,gk),un=j.Um(li,is,ua,us,ui,uo,iI,ur,gz,lu.pipe(j.Gt(li)),gn,rc),uc=j.S5(un,sS);$(ue(process.argv.slice(2)).pipe(X.Mim(e=>X.OH5(()=>{process.exitCode=e})),X.Gte(uc)),{disableErrorReporting:!0})},1688(e,t,a){var s=a(2718);let l=s.xCb(["invalid_render_artifact","render_limit_exceeded","unsupported_render_glyph","rasterization_failed"]),i=s.xCb(["artifact","geometry","font","rasterization"]);class o extends s.rNF()("HeadlessPngRenderError",{cause:s.kld(),code:l,stage:i,message:s.QfV,details:s.O31(s.QfV)}){}a.d(t,{FG:()=>o})},5030(e,t,a){function s(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function l(e,t,a,s){return{code:e,message:t,...void 0===a?{}:{observed:a},...void 0===s?{}:{limit:s}}}function i(e,t=0){let a=1/0,o=1/0,r=-1/0,n=-1/0;for(let t of e){if(!(s(t)&&"number"==typeof t.x&&Number.isFinite(t.x)&&"number"==typeof t.y&&Number.isFinite(t.y)&&"number"==typeof t.width&&Number.isFinite(t.width)&&"number"==typeof t.height&&Number.isFinite(t.height)))return l("invalid_geometry","element geometry is invalid");let e=Math.abs(t.width),i=Math.abs(t.height);if(e>8192||i>8192)return l("element_dimension",`element dimension exceeds ${String(8192)}`,Math.max(e,i),8192);let c=Math.hypot(e,i)/2,d=t.x+t.width/2,p=t.y+t.height/2;a=Math.min(a,d-c),o=Math.min(o,p-c),r=Math.max(r,d+c),n=Math.max(n,p+c)}if(0===e.length)return;let c=r-a,d=n-o;if(c>8192||d>8192)return l("canvas_dimension",`canvas dimension exceeds ${String(8192)}`,Math.max(c,d),8192);let p=c*d;if(p>6291456)return l("canvas_area",`canvas area exceeds ${String(6291456)}`,p,6291456);let h=(c+40)*1*((d+40+t)*1);if(h>0x1800000)return l("output_pixels",`PNG output exceeds ${String(0x1800000)} pixels at minimum scale`,h,0x1800000)}function o(e,t){let a=new Set(t.flatMap(e=>s(e)&&"image"===e.type&&!0!==e.isDeleted&&"string"==typeof e.fileId?[e.fileId]:[])),i=0;for(let t of a){let a=Object.hasOwn(e,t)?e[t]:void 0,l=s(a)?a.dataURL:void 0;"string"==typeof l&&(i+=l.length)}return i>8388608?l("file_bytes",`embedded image data exceeds ${String(8388608)} bytes`,i,8388608):void 0}function r(e,t=0){return i(e,t)?.message}function n(e,t){if(!Number.isFinite(e)||!Number.isFinite(t)||e<=0||t<=0)return l("invalid_geometry","rendered SVG dimensions are invalid");let a=Math.min(2,16384/e,16384/t,Math.sqrt(0x1800000/(e*t)));if(a<1){let a=e*t;return a>0x1800000?l("output_pixels",`PNG output exceeds ${String(0x1800000)} pixels at minimum scale`,a,0x1800000):l("output_dimension","rendered SVG dimension exceeds the PNG limit at minimum scale",Math.max(e,t),16384)}return Math.max(1,Math.floor(1e3*a)/1e3)}a.d(t,{Gd:()=>r,Ts:()=>i,Yu:()=>n,jA:()=>o},{Z4:6291456,ce:0x1800000})},6982(e){e.exports=t("crypto")},7598(e){e.exports=t("node:crypto")},76(e,t,a){let s=a(9095),l=process.env;function i(e){return"string"==typeof e?!!l[e]:"env"in e?l[e.env]&&l[e.env].includes(e.includes):"any"in e?e.any.some(function(e){return!!l[e]}):Object.keys(e).every(function(t){return l[t]===e[t]})}Object.defineProperty(t,"_vendors",{value:s.map(function(e){return e.constant})}),t.name=null,t.isPR=null,t.id=null,"false"!==l.CI&&s.forEach(function(e){let a=(Array.isArray(e.env)?e.env:[e.env]).every(function(e){return i(e)});t[e.constant]=a,a&&(t.name=e.name,t.isPR=function(e){switch(typeof e.pr){case"string":return!!l[e.pr];case"object":if("env"in e.pr)if("any"in e.pr)return e.pr.any.some(function(t){return l[e.pr.env]===t});else return e.pr.env in l&&l[e.pr.env]!==e.pr.ne;if("any"in e.pr)return e.pr.any.some(function(e){return!!l[e]});return i(e.pr);default:return null}}(e),t.id=e.constant)}),t.isCI=!!("false"!==l.CI&&(l.BUILD_ID||l.BUILD_NUMBER||l.CI||l.CI_APP_ID||l.CI_BUILD_ID||l.CI_BUILD_NUMBER||l.CI_NAME||l.CONTINUOUS_INTEGRATION||l.RUN_ID||t.name))},485(e,t,a){e.exports=a(76).isCI},664(e,t,a){a.d(t,{CN:()=>g,BC:()=>m,Ie:()=>z,pb:()=>B,i8:()=>k,g9:()=>b,Uk:()=>M,Ts:()=>u,CZ:()=>v,ET:()=>y,HV:()=>w,T9:()=>P,Tj:()=>L,YW:()=>f,of:()=>_,jB:()=>A,TS:()=>S,di:()=>C});var s=a(7876),l=a(1594);let i=e=>e.length>0;var o=a(9771),r=a(592),n=a(1587),c=a(2860),d=a(915),p=a(9315);let h=globalThis.Array,g=e=>new h(o.S(e)),u=e=>h.isArray(e)?e:h.from(e);d.Wo,n.toArray;let f=(0,l.XY)(2,(e,{onEmpty:t,onNonEmpty:a})=>y(e)?a(e):t()),m=(0,l.XY)(2,(e,t)=>[...e,t]);h.isArray;let v=i,y=i,w=e=>y(e)?n.some(x(e)):n.none(),x=e=>e[e.length-1],b=(0,l.XY)(2,(e,t)=>{let a=0;for(let s of e){if(t(s,a))return n.some(a);a++}return n.none()}),k=r.i8,M=(0,l.XY)(2,(e,t)=>{let a=u(e);for(let e=a.length-1;e>=0;e--){let s=a[e],l=t(s,e);if("boolean"==typeof l){if(l)return n.some(s)}else if(n.isSome(l))return l}return n.none()}),C=(0,l.XY)(2,(e,t)=>{let a=h.from(e);return a.sort(t),a}),z=()=>[],_=e=>[e],L=(0,l.XY)(2,(e,t)=>e.map(t)),B=(0,l.XY)(2,(e,t)=>{let a=u(e),s=[];for(let e=0;e<a.length;e++)t(a[e],e)&&s.push(a[e]);return s}),A=(0,l.XY)(2,(e,t)=>{let a=[],s=[],l=0;for(let i of e){let e=t(i,l++);p.oJ(e)?a.push(e.success):s.push(e.failure)}return[a,s]}),S=(0,l.XY)(3,(e,t,a)=>u(e).reduce((e,t,s)=>a(e,t,s),t));c.O3;let P=s.O3},5053(e,t,a){var s=a(9519),l=a(7876),i=a(1594),o=a(1587),r=a(2860),n=a(4233),c=a(636);let d=globalThis.BigInt,p=d(0);n.sI;let h=(0,i.XY)(2,(e,t)=>e+t),g=r.Qw,u=l.Qw,f=r.hl(g),m=r.bi(g),v=r.yJ(g),y=r.OW(g),w=r.Bt(g),x=r.qE(g),b=r.jk(g),k=r.T9(g),M=c.L((e,t)=>e+t,p),C=s.T9(g),z=s.jk(g);a.d(t,{},{K0:z,OW:y,Ro:e=>e>d(Number.MAX_SAFE_INTEGER)||e<d(Number.MIN_SAFE_INTEGER)?o.none():o.some(Number(e)),T9:k,Tq:w,aD:M,bi:m,cz:h,hl:f,jk:b,pH:g,qE:x,rs:u,sO:C,yJ:v})},3265(e,t,a){var s=a(5053),l=a(1587);let i=BigInt(0),o=BigInt(1),r=BigInt(1e3),n=BigInt(1024),c=[{symbol:"B",factor:o,names:["B","byte","bytes"]},{symbol:"kB",factor:r,names:["kB","kilobyte","kilobytes"]},{symbol:"MB",factor:r**BigInt(2),names:["MB","megabyte","megabytes"]},{symbol:"GB",factor:r**BigInt(3),names:["GB","gigabyte","gigabytes"]},{symbol:"TB",factor:r**BigInt(4),names:["TB","terabyte","terabytes"]},{symbol:"PB",factor:r**BigInt(5),names:["PB","petabyte","petabytes"]},{symbol:"EB",factor:r**BigInt(6),names:["EB","exabyte","exabytes"]},{symbol:"ZB",factor:r**BigInt(7),names:["ZB","zettabyte","zettabytes"]},{symbol:"YB",factor:r**BigInt(8),names:["YB","yottabyte","yottabytes"]},{symbol:"RB",factor:r**BigInt(9),names:["RB","ronnabyte","ronnabytes"]},{symbol:"QB",factor:r**BigInt(10),names:["QB","quettabyte","quettabytes"]}],d=[c[0],{symbol:"KiB",factor:n,names:["KiB","kibibyte","kibibytes"]},{symbol:"MiB",factor:n**BigInt(2),names:["MiB","mebibyte","mebibytes"]},{symbol:"GiB",factor:n**BigInt(3),names:["GiB","gibibyte","gibibytes"]},{symbol:"TiB",factor:n**BigInt(4),names:["TiB","tebibyte","tebibytes"]},{symbol:"PiB",factor:n**BigInt(5),names:["PiB","pebibyte","pebibytes"]},{symbol:"EiB",factor:n**BigInt(6),names:["EiB","exbibyte","exbibytes"]},{symbol:"ZiB",factor:n**BigInt(7),names:["ZiB","zebibyte","zebibytes"]},{symbol:"YiB",factor:n**BigInt(8),names:["YiB","yobibyte","yobibytes"]}],p=new Map([...c,...d.slice(1)].flatMap(e=>e.names.map(t=>[t,e]))),h=e=>{throw Error(`Invalid ByteSize: ${e}`)},g=e=>!Number.isSafeInteger(e)||e<0?h(`expected a non-negative safe integer, received ${e}`):BigInt(e),u=e=>{let t=/^\s*(\d+)(?:\.(\d+))?\s*([A-Za-z]+)\s*$/.exec(e);if(null===t)return h(`unsupported syntax ${JSON.stringify(e)}`);let a=p.get(t[3]);if(void 0===a)return h(`unsupported unit ${JSON.stringify(t[3])}`);let s=t[2]??"",l=BigInt(10)**BigInt(s.length),o=BigInt(t[1]+s)*a.factor;return o%l!==i?h(`${JSON.stringify(e)} does not represent an integral number of bytes`):o/l},f=l.liftThrowable(u),m=e=>{switch(typeof e){case"bigint":if(e<i)return h(`expected a non-negative bigint, received ${e}`);return e;case"number":return g(e);case"string":return u(e)}return h(`unsupported input ${e}`)},v=l.liftThrowable(m),y=s.Ro;s.pH,s.rs,s.Tq,s.jk,s.T9,s.qE,s.hl,s.bi,s.yJ,s.OW,s.cz,s.aD,s.sO,s.K0,a.d(t,{},{Dg:e=>e,Ro:y,bN:m,ee:e=>"bigint"==typeof e?m(e):g(e),lX:v,sH:f,yp:e=>"bigint"==typeof e&&e>=i})},719(e,t,a){var s=a(2449),l=a(6297);s.PX,s.B4,s.Aj,s.Wg;let i=s.lC;s.Xb,s.ik;let o=s.b5;s.DH;let r=s.OE,n=s.Iu;l.nIy,l.ORc;let c=l.nn5,d=l.O$X;s.h2;let p=l.ReC;l.myX,l.QE5,l.khU;let h=l.L$u;l.gpn,l.k7S,l.BbX;let g=l.prj;l.tU5,l.h74,l.Bou,l.RJ6;let u=l.GyP;s.PW,s.qB,s.Xm;let f=s.$L;s.q_;let m=s.RS,v=s.Vw;l.DQo,l.c8t,l.MUS,l.t8c,l._y;let y=l.qwd;l.ASO,l.F7W,l.Aub,l.cOF,l.Rft,l.RD4,l.Kkt,l.PnV;let w=l.Bk6;s.Eh,l.tQ6,l.On5,a.d(t,{},{$L:f,Bk:w,F_:n,L$:h,RS:m,Tj:d,Vw:v,fJ:r,iw:p,j9:u,kO:o,lC:i,nn:c,pr:g,qw:y})},4238(e,t,a){var s=a(6297);s.a1U,s.RKA;let l=s.Rud;s.s0X,s.T13,a.d(t,{},{Ru:l})},9519(e,t,a){function s(e){return{combine:e}}function l(e){return s((t,a)=>-1===e(t,a)?t:a)}function i(e){return s((t,a)=>1===e(t,a)?t:a)}a.d(t,{L8:()=>s,T9:()=>i,jk:()=>l})},1179(e,t,a){var s=a(3811),l=a(3332),i=a(1594),o=a(5033),r=a(2449),n=a(1587),c=a(4233);let d="~effect/Context/Service",p=function(){let e=function(){};Object.setPrototypeOf(e,h);let t=(t,a)=>(e.key=t,a?.defaultValue&&(e[u]=u,e.defaultValue=a.defaultValue),a?.make&&(e.make=a.make),a?.fiberCached&&g.add(t),e);return arguments.length>0?t(arguments[0],arguments[1]):t},h={[d]:d,...s.bp({label:"Service",evaluate(e){return(0,r.xt)(V(e.context,this))}}),toJSON(){return{_id:"Service",key:this.key}},of:e=>e,context(e){return _(this,e)},use(e){return(0,r.R6)(t=>e(V(t.context,this)))},useSync(e){return(0,r.R6)(t=>(0,r.xt)(e(V(t.context,this))))}},g=new Set,u="~effect/Context/Reference",f="~effect/Context",m=(e,t,a,s)=>{let l=Object.create(k);return l.cacheRoot=e??l,l.base=t,l.overlay=a,l.depth=s,l._flat=void 0,l.baseHits=0,l},v=(e,t)=>{t&&(v(e,t.parent),e.set(t.key,t.value))},y=e=>{if(e._flat)return e._flat;if(!e.overlay)return e._flat=e.base;let t=new Map(e.base);return v(t,e.overlay),e._flat=t},w=Symbol(),x=(e,t)=>{for(let a=e.overlay;a;a=a.parent)if(a.key===t)return a.value;let a=e.base.get(t);return void 0!==a||e.base.has(t)?(e.overlay&&++e.baseHits>=e.base.size&&e.baseHits>=8&&(e.base=y(e),e.overlay=void 0,e.depth=0),a):w},b=e=>m(void 0,e,void 0,0),k={get mapUnsafe(){return y(this)},...r.fU,[f]:{_Services:e=>e},toJSON(){return{_id:"Context",services:Array.from(this.mapUnsafe).map(([e,t])=>({key:e,value:t}))}},[l.HR](e){if(!M(e))return!1;let t=this.mapUnsafe,a=e.mapUnsafe;if(t.size!==a.size)return!1;for(let[e,s]of t)if(!a.has(e)||!l.aI(s,a.get(e)))return!1;return!0},[o.HR](){return o.ai(this.mapUnsafe.size)}},M=e=>(0,c.i5)(e,f),C=e=>!!e[u],z=b(new Map),_=(e,t)=>b(new Map([[e.key,t]])),L=(0,i.XY)(3,(e,t,a)=>B(e,t.key,a)),B=(e,t,a)=>{let s=g.has(t)?void 0:e.cacheRoot;if(e.depth>=8){let l=new Map(e.mapUnsafe);return l.set(t,a),m(s,l,void 0,0)}return m(s,e.base,{key:t,value:a,parent:e.overlay},e.depth+1)},A=(0,i.XY)(2,(e,t)=>S(e,t.key)),S=(e,t)=>{let a=x(e,t);return a===w?void 0:a},P=(0,i.XY)(2,(e,t)=>{let a=x(e,t.key);if(a===w){if(C(t))return q(t);throw F(t)}return a}),V=P,H="~effect/Context/defaultValue",q=e=>H in e?e[H]:e[H]=e.defaultValue(),F=e=>{let t=Error(`Service not found${e.key?`: ${String(e.key)}`:""}`);if(t.stack){let e=t.stack.split("\n");e.splice(1,3),t.stack=e.join("\n")}return t},I=(0,i.XY)(2,(e,t)=>{let a=x(e,t.key);return a!==w?n.some(a):C(t)?n.some(q(t)):n.none()}),E=(0,i.XY)(2,(e,t)=>{let a;return 0===e.mapUnsafe.size?t:0===t.mapUnsafe.size?e:((e=>t.mapUnsafe.forEach((t,a)=>e.set(a,t)))(a=new Map(e.mapUnsafe)),b(a))});a.d(t,{},{Ie:()=>z,Jt:V,L8:_,LZ:b,Or:p,Pf:(e,t)=>e.cacheRoot===t.cacheRoot,Ub:S,Um:(...e)=>{let t=new Map;for(let a=0;a<e.length;a++)e[a].mapUnsafe.forEach((e,a)=>{t.set(a,e)});return b(t)},WQ:L,Y6:A,aE:M,fp:P,h1:E,kl:p,om:I})},4942(e,t,a){var s=a(2449),l=a(2275),i=a(1554),o=a(4233);let r=class extends i.Xs{constructor(e){super(),e&&l.z(this,e)}};function n(){if(1==arguments.length){let e=arguments[0];return function(t){return e[t._tag](t)}}let e=arguments[0],t=arguments[1];return t[e._tag](e)}let c=s.$D,d=s.rN;a.d(t,{},{$D:c,Ij:()=>new Proxy({},{get:(e,t,a)=>"$is"===t?o.$J:"$match"===t?n:e=>({...e,_tag:t})}),Xs:r,rN:d})},9237(e,t,a){var s=a(1594),l=a(6297),i=a(1554);let o={"~effect/Deferred":{_A:s.D_,_E:s.D_},pipe(){return(0,i.tT)(this,arguments)}},r=function(){this.resumes=void 0,this.effect=void 0};r.prototype=o;let n=e=>void 0!==e.effect;a.d(t,{},{$L:e=>l.OH5(()=>n(e)),$w:(e,t)=>{if(e.effect)return!1;if(e.effect=t,e.resumes){let a=e.resumes;e.resumes=void 0;for(let e=0;e<a.length;e++)a[e](t)}return!0},LZ:()=>new r,NJ:n,Tx:e=>l.E2r(t=>e.effect?t(e.effect):(e.resumes??=[],e.resumes.push(t),l.OH5(()=>{let a=e.resumes;if(void 0===a)return;let s=a.indexOf(t);s>=0&&a.splice(s,1)})))})},3614(e,t,a){var s=a(3332),l=a(1594),i=a(5033),o=a(3952),r=a(2860),n=a(1554),c=a(4233);let d="~effect/Duration",p=BigInt(0),h=BigInt(1),g=BigInt(2),u=BigInt(10),f=BigInt(24),m=BigInt(60),v=BigInt(1e3),y=BigInt(1e6),w=e=>BigInt(e<0?Math.ceil(e-.5):Math.floor(e+.5)),x=(e,t)=>{let a=e.indexOf(".");if(-1===a)return BigInt(e)*t;let s="-"===e[0],l=e.slice(a+1),i=u**BigInt(l.length),o=(BigInt(e.slice(+!!s,a))*i+BigInt(l))*t,r=o/i+(o%i*g>=i?h:p);return s?-r:r},b=/^(-?\d+(?:\.\d+)?)\s+(nanos?|micros?|millis?|seconds?|minutes?|hours?|days?|weeks?)$/,k=e=>{switch(typeof e){case"number":return q(e);case"bigint":return H(e);case"string":{if("Infinity"===e)return P;if("-Infinity"===e)return V;let t=b.exec(e);if(!t)break;let[a,s,l]=t;if("nano"===l||"nanos"===l)return H(x(s,h));if("micro"===l||"micros"===l)return H(x(s,v));let i=Number(s);switch(l){case"milli":case"millis":return q(i);case"second":case"seconds":return F(i);case"minute":case"minutes":return I(i);case"hour":case"hours":return E(i);case"day":case"days":return O(i);case"week":case"weeks":return U(i)}break}case"object":{if(null===e)break;if(d in e)return e;if(Array.isArray(e)){if(2!==e.length||!e.every(c.Et))return M(e);if(Number.isNaN(e[0])||Number.isNaN(e[1]))return S;if(-1/0===e[0]||-1/0===e[1])return V;if(1/0===e[0]||1/0===e[1])return P;return B(w(1e9*e[0]+e[1]))}let t=0;if(e.weeks&&(t+=6048e5*e.weeks),e.days&&(t+=864e5*e.days),e.hours&&(t+=36e5*e.hours),e.minutes&&(t+=6e4*e.minutes),e.seconds&&(t+=1e3*e.seconds),e.milliseconds&&(t+=e.milliseconds),!e.microseconds&&!e.nanoseconds)return B(t);return B(w(1e6*t+(e.microseconds??0)*1e3+(e.nanoseconds??0)))}}return M(e)},M=e=>{throw Error(`Invalid Input: ${e}`)},C={_tag:"Millis",millis:0},z={_tag:"Infinity"},_={_tag:"NegativeInfinity"},L={[d]:d,[i.HR](){switch(this.value._tag){case"Millis":{let e=1e6*this.value.millis;return Number.isFinite(e)?i.tW(w(e)):i.ai(this.value.millis)}case"Nanos":return i.tW(this.value.nanos);default:return i.QK(this.value)}},[s.HR](e){return A(e)&&D(this,e)},toString(){switch(this.value._tag){case"Infinity":return"Infinity";case"NegativeInfinity":return"-Infinity";case"Nanos":return`${this.value.nanos} nanos`;case"Millis":return`${this.value.millis} millis`}},toJSON(){switch(this.value._tag){case"Millis":return{_id:"Duration",_tag:"Millis",millis:this.value.millis};case"Nanos":return{_id:"Duration",_tag:"Nanos",nanos:String(this.value.nanos)};case"Infinity":return{_id:"Duration",_tag:"Infinity"};case"NegativeInfinity":return{_id:"Duration",_tag:"NegativeInfinity"}}},[o.FX](){return this.toJSON()},pipe(){return(0,n.tT)(this,arguments)}},B=e=>{let t=Object.create(L);return"number"==typeof e?isNaN(e)||0===e||Object.is(e,-0)?t.value=C:Number.isFinite(e)?Number.isInteger(e)?t.value={_tag:"Millis",millis:e}:t.value={_tag:"Nanos",nanos:w(1e6*e)}:t.value=e>0?z:_:e===p?t.value=C:t.value={_tag:"Nanos",nanos:e},t},A=e=>(0,c.i5)(e,d),S=B(0),P=B(1/0),V=B(-1/0),H=e=>B(e),q=e=>B(e),F=e=>B(1e3*e),I=e=>B(6e4*e),E=e=>B(36e5*e),O=e=>B(864e5*e),U=e=>B(6048e5*e),X=e=>{let t=k(e);switch(t.value._tag){case"Infinity":case"NegativeInfinity":throw Error("Cannot convert infinite duration to nanos");case"Nanos":return t.value.nanos;case"Millis":return w(1e6*t.value.millis)}},Y=(0,l.XY)(2,(e,t)=>{switch(e.value._tag){case"Millis":return t.onMillis(e.value.millis);case"Nanos":return t.onNanos(e.value.nanos);case"Infinity":return t.onInfinity();case"NegativeInfinity":return(t.onNegativeInfinity??t.onInfinity)()}}),T=(0,l.XY)(3,(e,t,a)=>"Infinity"===e.value._tag||"NegativeInfinity"===e.value._tag||"Infinity"===t.value._tag||"NegativeInfinity"===t.value._tag?a.onInfinity(e,t):"Millis"===e.value._tag?"Millis"===t.value._tag?a.onMillis(e.value.millis,t.value.millis):a.onNanos(X(e),t.value.nanos):a.onNanos(e.value.nanos,X(t))),Z=r.L8((e,t)=>T(e,t,{onMillis:(e,t)=>e<t?-1:+(e>t),onNanos:(e,t)=>e<t?-1:+(e>t),onInfinity:(e,t)=>e.value._tag===t.value._tag?0:"Infinity"===e.value._tag?1:"NegativeInfinity"===e.value._tag||"Infinity"===t.value._tag?-1:1})),G=r.bi(Z),D=(0,l.XY)(2,(e,t)=>T(e,t,{onMillis:(e,t)=>e===t,onNanos:(e,t)=>e===t,onInfinity:(e,t)=>e.value._tag===t.value._tag})),R=e=>{if("Infinity"===e.value._tag)return"Infinity";if("NegativeInfinity"===e.value._tag)return"-Infinity";if((e=>{switch(e.value._tag){case"Millis":return 0===e.value.millis;case"Nanos":return e.value.nanos===p;case"Infinity":case"NegativeInfinity":return!1}})(e))return"0";if((e=>{switch(e.value._tag){case"Millis":return e.value.millis<0;case"Nanos":return e.value.nanos<p;case"NegativeInfinity":return!0;case"Infinity":return!1}})(e))return"-"+R((e=>{switch(e.value._tag){case"Infinity":case"NegativeInfinity":return P;case"Millis":return e.value.millis<0?B(-e.value.millis):e;case"Nanos":return e.value.nanos<p?B(-e.value.nanos):e}})(e));let t=(e=>{if("Infinity"===e.value._tag)return{days:1/0,hours:1/0,minutes:1/0,seconds:1/0,millis:1/0,nanos:1/0};if("NegativeInfinity"===e.value._tag)return{days:-1/0,hours:-1/0,minutes:-1/0,seconds:-1/0,millis:-1/0,nanos:-1/0};let t=X(e),a=t<p,s=a?-t:t,l=s/y,i=l/v,o=i/m,r=o/m,n=a?-1:1;return{days:n*Number(r/f),hours:n*Number(r%f),minutes:n*Number(o%m),seconds:n*Number(i%m),millis:n*Number(l%v),nanos:n*Number(s%y)}})(e),a=[];return 0!==t.days&&a.push(`${t.days}d`),0!==t.hours&&a.push(`${t.hours}h`),0!==t.minutes&&a.push(`${t.minutes}m`),0!==t.seconds&&a.push(`${t.seconds}s`),0!==t.millis&&a.push(`${t.millis}ms`),0!==t.nanos&&a.push(`${t.nanos}ns`),a.join(" ")};a.d(t,{},{GP:R,MI:e=>"Infinity"!==e.value._tag&&"NegativeInfinity"!==e.value._tag,Tn:P,YA:F,bN:k,bi:G,cF:H,fP:e=>Y(k(e),{onMillis:e=>e/1e3,onNanos:e=>Number(e)/1e9,onInfinity:()=>1/0,onNegativeInfinity:()=>-1/0}),kE:e=>Y(k(e),{onMillis:l.D_,onNanos:e=>Number(e)/1e6,onInfinity:()=>1/0,onNegativeInfinity:()=>-1/0}),n$:A,ne:q,qv:V,v_:S})},2842(e,t,a){a.d(t,{Q56:()=>ex,jGc:()=>eb,U9h:()=>ek,Q7R:()=>k,hgn:()=>T,swY:()=>eZ,Muk:()=>eS,as:()=>j,E2r:()=>P,MfU:()=>N,Tyx:()=>K,osR:()=>Q,KuX:()=>W,loE:()=>J,RKA:()=>eX,_32:()=>eP,F_Q:()=>E,_r7:()=>eG,yeE:()=>eM,NS5:()=>R,fJG:()=>q,ATB:()=>F,pVV:()=>I,qIB:()=>Y,Ab9:()=>ej,fn:()=>eU,D9k:()=>eO,vCS:()=>eN,jJl:()=>M,i4r:()=>eA,ar0:()=>eH,x6Z:()=>eq,yUA:()=>X,JkU:()=>H,XeO:()=>ei,GaK:()=>e_,yw5:()=>b,vVN:()=>eT,FFw:()=>eY,TjK:()=>$,q7Y:()=>e$,jkJ:()=>eD,xm_:()=>ee,Z9x:()=>eR,YWq:()=>ed,khu:()=>ep,tvg:()=>eh,ZmZ:()=>V,S5A:()=>eC,cfM:()=>ez,uKv:()=>D,QgK:()=>et,ivC:()=>z,Gte:()=>eg,PpN:()=>eu,PfK:()=>em,KT6:()=>ec,Ket:()=>G,L5P:()=>el,MY7:()=>eF,eJC:()=>eI,lKS:()=>eE,z8E:()=>ev,P1j:()=>ey,Pxi:()=>ew,Nav:()=>ef,yy4:()=>en,PyW:()=>L,DYE:()=>B,OH5:()=>A,Mim:()=>Z,dGm:()=>es,sFT:()=>ea,wRz:()=>eo,mgX:()=>er,SvU:()=>O,$mh:()=>_,rfi:()=>eL,FcF:()=>eB,rIH:()=>S,iMI:()=>C,R6R:()=>U,fRP:()=>eV});var s=a(1594),l=a(2449),i=a(6297),o=(a(3614),a(1179));a(9315);var r=a(6771),n=a(5633);let c=(0,s.XY)(e=>(0,l.yw)(e[0]),(e,t,a)=>{let s;return o.aE(t)?i.PpN(e,t):(s=Array.isArray(t)?n.Um(...t):t,i.Pxi(t=>i.qIB(a?.local?n.H7(s,n.j6(),t):n.LT(s,t),t=>i.PpN(e,t))))});var d=a(1587),p=a(3753),h=a(6481);(e,t,a)=>i.qIB(r.xn(t),t=>{let s=r.d3.defaultValue();return i.h_t(i.i4r(i.Mim(i.qIB(i.DYE(()=>i.PfK(e,r.d3,s)),t),e=>i.OH5(()=>{s=e})),{disableYield:!0}),e=>l.$L(e)?i.PyW(e.value):a(e,0===s.attempt?d.none():d.some(s)))});let g=(0,s.XY)(3,(e,t,a)=>i.qIB(r.xn(t),t=>{let s,l=r.d3.defaultValue(),o=i.h_t(i.DYE(()=>i.PfK(e,r.d3,l)),e=>(s=e,i.qIB(t(e),e=>(l=e,o))));return p.m8(o,e=>(0,h.s)(()=>a(s,e)))})),u=(0,s.XY)(2,(e,t)=>g(e,"function"==typeof t?t(s.D_):r.GM(t)?t:m(t),i.fJG)),f=r.le(r.i4),m=e=>{let t=e.schedule?r.le(e.schedule):f;return e.while&&(t=r.E6(t,({input:t})=>{let a=e.while(t);return l.yw(a)?a:i.PyW(a)})),e.until&&(t=r.E6(t,({input:t})=>{let a=e.until(t);return l.yw(a)?i.TjK(a,e=>!e):i.PyW(!a)})),void 0!==e.times&&(t=r.E6(t,({attempt:t})=>i.PyW(t<=e.times))),t},v=r.t5(1);var y=a(2275);let w=a(3332).Xq({_E:e=>e,_A:e=>e,_R:e=>e});({...l.In,"~effect/Request":w}),a(3909);var x=a(4600);l.$n;let b=l.yw,k=i.Q7R;i.jBG,i.TSs,i.tfT,i.i8i,i.kAe;let M=i.jJl;i.d5f;let C=i.iMI,z=i.ivC,_=i.$mh,L=i.PyW;i.lwU,i.nGE;let B=i.DYE,A=i.OH5,S=i.rIH;i.Vxk;let P=i.E2r,V=i.ZmZ;i.Do,i.JrD,i.uVU,i.oIE;let H=i.JkU,q=i.fJG;i.gOk;let F=i.ATB,I=i.pVV,E=i.F_Q,O=i.SvU;i.m9E,i.KN3;let U=l.R6;l.Hq;let X=i.yUA;i.sVm,i.pkL,i.bJ;let Y=i.qIB;i.Bqz;let T=i.hgn,Z=i.Mim,G=i.Ket,D=i.uKv,R=i.NS5,$=i.TjK,j=i.as;i.Xx$,i.NLW,i.UUz,i.yU6,i.OYO;let N=i.h_t,W=i.KuX,J=i.loE;i.AXC,i.zt4,i.scW;let K=i.Tyx;i.Fig,i.XWm;let Q=i.osR;i.U9Y,i.sJf,i.rNk;let ee=i.xm_;i.UcN;let et=i.QgK,ea=i.sFT;i.k$L;let es=i.dGm;i.cA6,i.bKC,i.nAi,i.u4Y;let el=u;i._Sg;let ei=i.XeO;i.GrF,i.$$g,i.DM4,i.Dd;let eo=i.wRz;i.D52;let er=i.mgX;i.cbG;let en=i.yy4;i.ayu,i.Vdx,i.FfP,i.O4F;let ec=i.KT6;i.pbD,i.x1Q,i.E8K,i.Pm0,i.VtY,i.W$I,i.ahH,i.z7s;let ed=i.YWq;i.G$Q,i.D$$,i.NZb,i.wR5;let ep=i.khu,eh=i.tvg;i.N6O,i.oJd,i._OA,i.sxi;let eg=c,eu=i.PpN;i.oao,i.euC;let ef=i.Nav;i.r_d,i.bUZ,i.L_I;let em=i.PfK;i.c7E;let ev=i.z8E,ey=i.P1j,ew=i.Pxi,ex=i.Q56;i.N24;let eb=i.jGc,ek=i.U9h,eM=i.yeE,eC=i.S5A;i.BeE,i.iKM,i.r7h;let ez=i.cfM;i.fGe,i.uRq,i.PO3,i.Rgn,i.CJw;let e_=i.GaK;i.Inz,i.nAr;let eL=i.rfi,eB=i.FcF;i.eMl,i.dsN;let eA=i.i4r;i.aAq,i.Xrv,i.kJM,i._o1,i.nDN,i.MaT;let eS=i.Muk;i.ww9;let eP=i._32;i.Wj8,i.Fu6,i.WbR,i.A_r,i.Z98,i.Rd$,i.gvr;let eV=i.fRP;i.zr8,i.hq,i.zhn;let eH=i.ar0,eq=i.x6Z;i.yxg,i.PCg,i.pEE,i.ABT;let eF=i.MY7,eI=i.eJC;i.lSz,i.bPG,i.pR5,i.v2Q,i.NpQ,i.jqV,i.HZF,i.lE;let eE=i.lKS;i.rfH;let eO=i.D9k,eU=i.fn,eX=i.RKA;i.lIX;let eY=i.lIX("Warn"),eT=i.lIX("Error"),eZ=(0,s.XY)(e=>b(e[0]),(e,...t)=>i.bUZ(e,x.iL,e=>{let a=1===t.length?{...e,...t[0]}:{...e};return 1===t.length||y.x(a,t[0],t[1]),a}));i.gsV;let eG=(e,t,a)=>(...s)=>P(l=>{try{e(...s,(e,a)=>{e?l(q(t?t(e,s):e)):l(L(a))})}catch(e){l(a?q(a(e,s)):E(e))}}),eD=i.jkJ,eR=i.Z9x,e$=i.q7Y,ej=i.Ab9;i.UVN;let eN=i.vCS},3811(e,t,a){var s=a(2449);a.d(t,{},{bp:e=>(0,s.yj)({op:e.label,[s._3]:e.evaluate})})},3332(e,t,a){var s=a(5033),l=a(5844),i=a(4233);let o="~effect/Equal";function r(){return 1==arguments.length?e=>n(e,arguments[0]):n(arguments[0],arguments[1])}function n(e,t){if(e===t)return!0;if(null==e||null==t)return!1;let a=typeof e;return a===typeof t&&("number"===a&&e!=e&&t!=t||!("object"!==a&&"function"!==a||l.J3.has(e)||l.J3.has(t))&&function(e,t){let a=d.length;for(let s=a;s-- >0;)if(d[s]===e&&p[s]===t)return!0;if(a)return c(e,t);let s=h.get(e);s||h.set(e,s=new WeakMap);let l=s.get(t);return void 0===l&&s.set(t,l=c(e,t)),l}(e,t))}function c(e,t){d.push(e),p.push(t);try{return function(e,t){if(s.tW(e)!==s.tW(t))return!1;if(e instanceof Date){if(!(t instanceof Date))return!1;let a=e.getTime(),s=t.getTime();return a===s||Number.isNaN(a)&&Number.isNaN(s)}if(e instanceof RegExp)return t instanceof RegExp&&e.toString()===t.toString();let a=v(e);if(a!==v(t)||"function"==typeof e&&!a)return!1;if(a)return e[o](t);if(Array.isArray(e))return!!Array.isArray(t)&&e.length===t.length&&function(e,t){for(let a=0;a<e.length;a++)if(!n(e[a],t[a]))return!1;return!0}(e,t);if(ArrayBuffer.isView(e)){let a=e instanceof DataView;return!!ArrayBuffer.isView(t)&&e.byteLength===t.byteLength&&a===t instanceof DataView&&(a?g((0,l.j)(e),(0,l.j)(t)):g(e,t))}if(e instanceof Map)return t instanceof Map&&e.size===t.size&&u(e,t,f,m);else if(e instanceof Set)return t instanceof Set&&e.size===t.size&&u(e,t,s.tW,n);var i=e,r=t;let c=(0,l.Xp)(i),d=(0,l.Xp)(r);if(c.size!==d.size)return!1;for(let e of c)if(!d.has(e)||!n(i[e],r[e]))return!1;return!0}(e,t)}finally{d.pop(),p.pop()}}let d=[],p=[],h=new WeakMap;function g(e,t){if(e.length!==t.length)return!1;for(let a=0;a<e.length;a++)if(e[a]!==t[a])return!1;return!0}function u(e,t,a,s){let l=new Map;for(let e of t){let t=a(e),s=l.get(t);s?s.push(e):l.set(t,[e])}e:for(let t of e){let e=l.get(a(t));if(e){for(let a=0;a<e.length;a++)if(s(t,e[a])){e[a]=e[e.length-1],e.pop();continue e}}return!1}return!0}let f=e=>s.tW(e[0]),m=(e,t)=>n(e[0],t[0])&&n(e[1],t[1]),v=e=>(0,i.i5)(e,o);a.d(t,{aI:()=>r},{HR:o,Xq:e=>(l.J3.add(e),e),jI:()=>r})},7876(e,t,a){let s=e=>(t,a)=>t===a||e(t,a),l=(e,t)=>e===t,i=s((e,t)=>globalThis.Number.isNaN(e)&&globalThis.Number.isNaN(t));function o(e){return s((t,a)=>{if(t.length!==a.length)return!1;for(let s=0;s<t.length;s++)if(!e[s](t[s],a[s]))return!1;return!0})}function r(e){return s((t,a)=>{if(t.length!==a.length)return!1;for(let s=0;s<t.length;s++)if(!e(t[s],a[s]))return!1;return!0})}function n(e){let t=Reflect.ownKeys(e);return s((a,s)=>{for(let l of t)if(!e[l](a[l],s[l]))return!1;return!0})}a.d(t,{O3:()=>r,_k:()=>n,rd:()=>o},{L8:s,Qw:l,YZ:()=>l,wN:i})},6526(e,t,a){var s=a(2449),l=a(6297);s.IH,s.b9;let i=s.xt,o=s.cb,r=s.Rk;s.V2,l._sz;let n=l.x5l,c=l.CoE,d=l.VE1;l._mh,l.YDM,l.lNM,l.K$2,l.GUt,l.HIt,l.yJo,l._OD,l.jCT,l.Wtn,l.v9O,l.zPu,l.EkE,l.Hox,l.ely,l.kMI,l.Sv3,l.lgw,a.d(t,{},{AT:o,N6:d,Py:i,fJ:r,oJ:c,rI:n})},1958(e,t,a){var s=a(4233),l=a(1279);function i(e,t){let a=t?.space??0,i=new WeakSet,n=a?"number"==typeof a?" ".repeat(a):a:"",p=(e,t)=>{let a=e?.constructor;return a&&a!==Object.prototype.constructor&&a.name?`${a.name}(${t})`:t};return function e(a,h=0){try{return function(a,h=0){if("string"==typeof a)return JSON.stringify(a);if("number"==typeof a||null==a||"boolean"==typeof a||"symbol"==typeof a)return String(a);if("bigint"==typeof a)return String(a)+"n";if("object"==typeof a||"function"==typeof a){let g;if(i.has(a))return o;if(i.add(a),l.uC in a)g=e((0,l.f6)(a),h);else if(Array.isArray(a)){let t,s;g=!n||a.length<=1?`[${a.map(t=>e(t,h)).join(",")}]`:`[
|
|
237
237
|
${t=h+1,n.repeat(t)}${a.map(t=>e(t,h+1)).join(",\n"+(s=h+1,n.repeat(s)))}
|
|
238
238
|
${n.repeat(h)}]`}else if(a instanceof Date)g=c(a);else if(!t?.ignoreToString&&s.i5(a,"toString")&&"function"==typeof a.toString&&a.toString!==Object.prototype.toString&&a.toString!==Array.prototype.toString){let t=function(e){try{let t=e.toString();return"string"==typeof t?t:String(t)}catch{return"[toString threw]"}}(a);g=a instanceof Error&&void 0!==a.cause?`${t} (cause: ${e(a.cause,h)})`:t}else if(Symbol.iterator in a)g=`${a.constructor.name}(${e(Array.from(a),h)})`;else{let t=(e=>{try{return Reflect.ownKeys(e)}catch{return["[ownKeys threw]"]}})(a);if(!n||t.length<=1){let s=`{${t.map(t=>`${r(t)}:${e(d(a,t),h)}`).join(",")}}`;g=p(a,s)}else{let s=`{
|
|
239
239
|
${t.map(t=>{let s;return`${s=h+1,n.repeat(s)}${r(t)}: ${e(d(a,t),h+1)}`}).join(",\n")}
|
|
@@ -247,4 +247,4 @@ ${t}${a[e]}`;return e.cause&&(s+=` {
|
|
|
247
247
|
${ev(e.cause,`${t} `)}
|
|
248
248
|
${t}}`),s},ey="~effect/Fiber",ew={_A:v.D_,_E:v.D_},ex={id:0},eb=(()=>{try{return globalThis.process?.getBuiltinModule?.("node:async_hooks")?.AsyncResource}catch{return}})(),ek=()=>void 0===eb?void 0:new eb("effect/Fiber"),eM=()=>globalThis[B.fL];class eC{constructor(e,t=!0){this.setContext(e),this.id=++ex.id,this.currentOpCount=0,this.interruptible=t,this._stack=[],this._observers=void 0,this._exit=void 0,this._children=void 0,this._interruptedCause=void 0,this._yielded=void 0,this._running=!1,this._deferredInterrupt=!1,this._parent=void 0,this._asyncContext=void 0,this.cache.runtimeMetrics?.recordFiberStart(this.context)}get[ey](){return ew}get currentDispatcher(){return this._dispatcher??=this.cache.scheduler.makeDispatcher()}getRef(e){return u.Jt(this.context,e)}addObserver(e){return this._exit?(e(this._exit),v.Yi):(void 0===this._observers?this._observers=[e]:this._observers.push(e),()=>this.removeObserver(e))}removeObserver(e){if(this._exit||void 0===this._observers)return;let t=this._observers.indexOf(e);t>=0&&this._observers.splice(t,1)}interruptUnsafe(e,t){if(this._exit)return;let a=Z(e);this.cache.stackFrame&&(a=(0,V.Eh)(a,u.L8(V.z8,this.cache.stackFrame))),t&&(a=(0,V.Eh)(a,t)),this._interruptedCause=this._interruptedCause?(0,V.h2)(this._interruptedCause,a):a,this.interruptible&&(this._running?this._deferredInterrupt=!0:this.evaluate(eX(this._interruptedCause)))}pollUnsafe(){return this._exit}evaluate(e){if(this._exit)return;if(void 0!==this._asyncContext){let t=this._asyncContext;return this._asyncContext=void 0,t.runInAsyncScope(this.evaluate,this,e)}if(void 0!==this._yielded){let e=this._yielded;this._yielded=void 0,e()}let t=this.runLoop(e);if(t===V.GN){this._asyncContext=ek();return}let a=eB.interruptChildren&&eB.interruptChildren(this);if(void 0!==a)return this.evaluate(tV(a,()=>t));if(this._exit=t,this.cache.runtimeMetrics?.recordFiberEnd(this.context,this._exit),this._parent&&(this._parent._children?.delete(this),this._parent=void 0),void 0!==this._observers){let e=this._observers;this._observers=void 0;for(let a=0;a<e.length;a++)e[a](t)}this._stack.length=0,this._children=void 0,this.context=u.Ie()}runLoop(e){let t=globalThis[B.fL];globalThis[B.fL]=this;let a=this._running;this._running=!0;let s=!1,l=e;this.currentOpCount=0;try{for(;;){this._deferredInterrupt&&(this._deferredInterrupt=!1,l=eX(this._interruptedCause)),this.currentOpCount++;let e=this.cache;if(!s&&!e.preventYield&&e.scheduler.shouldYield(this)){s=!0;let e=l;l=tV(ej,()=>e)}if((l=e.tracerContext?e.tracerContext(l,this):l[V._3](this))===V.GN){let e=this._yielded;if(V.IH in e)return this._deferredInterrupt=!1,this._yielded=void 0,e;if(this._deferredInterrupt){this._yielded=void 0,e();continue}return V.GN}}}catch(e){if(!(0,w.i5)(l,V._3))return(0,V.V2)(`Fiber.runLoop: Not a valid effect: ${String(l)}`);return this.runLoop((0,V.V2)(e))}finally{this._running=a,globalThis[B.fL]=t}}getCont(e){if(this._deferredInterrupt)return this._deferredInterrupt=!1,e_;for(;;){let t=this._stack.pop();if(!t)return;let a=t[V.u4];if(void 0!==a){let s=a.call(t,this);if(s)return s[e]=s,s}if(t[e])return t}}succeedWith(e){if((++this.currentOpCount&eL-1)==0)return(0,V.xt)(e);let t=this.getCont(V.ee);return t?t[V.ee](e,this):this.yieldWith((0,V.xt)(e))}yieldWith(e){return this._yielded=e,V.GN}children(){return this._children??=new Set}pipe(){return(0,L.tT)(this,arguments)}setContext(e){let t=this.context;if(this.context=e,void 0!==t&&u.Pf(t,e))return;let a=e.cacheRoot,s=a._fiberCache??=ez(e);this.cache?.scheduler!==s.scheduler&&(this._dispatcher=void 0),this.cache=s}get currentSpanLocal(){let e=this.cache.span;return e?._tag==="Span"?e:void 0}}let ez=e=>{let t=u.Ub(e,S.RL);return{scheduler:u.Jt(e,A._F),tracer:t,tracerContext:t?t.context:void 0,tracerEnabled:u.Jt(e,I.rf),span:u.Ub(e,S.WG),logLevel:u.Jt(e,I.Gl),minimumLogLevel:u.Jt(e,I.zQ),stackFrame:u.Jt(e,I.vA),runtimeMetrics:u.Ub(e,q.F),maxOpsBeforeYield:u.Jt(e,A.Zm),preventYield:u.Jt(e,A.hf)}},e_={[V.ee]:(e,t)=>eX(t._interruptedCause),[V.Sc]:(e,t)=>eX(t._interruptedCause)},eL=32,eB={interruptChildren:void 0},eA=e=>{if(!e.cache.stackFrame)return;let t=new Map;return t.set(V.QJ.key,e.cache.stackFrame),u.LZ(t)},eS=e=>{if(void 0!==e._children&&0!==e._children.size)return eE(e._children)},eP=e=>e._exit?eU(e._exit):te(t=>e._exit?t(eU(e._exit)):eT(e.addObserver(e=>t(eU(e))))),eV=e=>te(t=>{let a,s=e[Symbol.iterator](),l=[];return!function e(){let i=s.next();for(;!i.done;){if(i.value._exit){l.push(i.value._exit),i=s.next();continue}a=i.value.addObserver(t=>{l.push(t),e()});return}t(eU(l))}(),eT(()=>a?.())}),eH=e=>e._exit?e._exit:te(t=>e._exit?t(e._exit):eT(e.addObserver(t))),eq=e=>te(t=>{let a=Array.from(e);if(0===a.length)return t(eU(g.Ie()));let s=Array(a.length),l=g.Ie(),i=()=>{for(let e=0;e<l.length;e++)a[e].removeObserver(l[e])},o=0,r=!1;for(let e=0;e<a.length&&!r;e++){let n=l=>{if(o++,"Failure"===l._tag)return r=!0,i(),t(l);s[e]=l.value,o===a.length&&t(eU(s))};l.push(n),a[e].addObserver(n)}return eT(()=>{r=!0,i()})}),eF=e=>(0,V.R6)(t=>eI(e,t.id)),eI=(0,v.XY)(e=>(0,w.i5)(e[0],ey),(e,t,a)=>(0,V.R6)(s=>{let l=eA(s);return l=l&&a?u.h1(l,a):l??a,e.interruptUnsafe(t,l),t_(eP(e))})),eE=e=>(0,V.R6)(t=>{let a=eA(t),s=g.Ie();for(let l of e)l.interruptUnsafe(t.id,a),s.push(l);return t_(eV(s))}),eO=(0,v.XY)(2,(e,t)=>(0,V.R6)(a=>{let s=eA(a),l=g.Ie();for(let a of e)a.interruptUnsafe(t,s),l.push(a);return t_(eV(l))})),eU=V.xt,eX=V.cb,eY=V.Rk,eT=(0,V.Uf)({op:"Sync",[V._3](e){let t=this[V.a2](),a=e.getCont(V.ee);return a?a[V.ee](t,e):e.yieldWith((0,V.xt)(t))}}),eZ=(0,V.Uf)({op:"Suspend",[V._3](e){return this[V.a2]()}}),eG=(0,v.XY)(e=>e.length>=2||y.isOption(e[0]),(e,t)=>y.isNone(e)?eY(t?t():new V.Xm("Effect.fromOption: Option.none")):eU(e.value)),eD=x.YW({onFailure:eY,onSuccess:eU}),eR=e=>null==e?eY(new V.Xm):eU(e),e$=(0,V.Uf)({op:"Yield",[V._3](e){let t=!1;return e.currentDispatcher.scheduleTask(()=>{t||e.evaluate(t1)},this[V.a2]??0),e.yieldWith(()=>{t=!0})}}),ej=e$(0),eN=e=>eU(y.some(e)),eW=eU(y.none()),eJ=e=>y.isNone(e)?eW:tE(e.value,y.some),eK=e=>eZ(()=>eX(e())),eQ=e=>(0,V.V2)(e),e1=e=>eZ(()=>eY(e())),e0=eU(void 0),e2=e=>{let t="function"==typeof e?e:e.try,a="function"==typeof e?e=>new iI(e,"An error occurred in Effect.try"):e.catch;return eZ(()=>{try{return eU(t())}catch(e){return eY(a(e))}})},e3=e=>e8(function(t,a){e(a).then(e=>t(eU(e)),e=>t(eQ(e)))},0!==e.length),e5=e=>{let t="function"==typeof e?e:e.try,a="function"==typeof e?e=>new iI(e,"An error occurred in Effect.tryPromise"):e.catch;return e8(function(e,s){let l=e=>eZ(()=>{try{return eY((0,P.s)(()=>a(e)))}catch(e){return eQ(e)}});try{t(s).then(t=>e(eU(t)),t=>e(l(t)))}catch(t){e(l(t))}},0!==t.length)},e4=e=>(0,V.R6)(t=>e(t.id)),e6=(0,V.R6)(eU),e7=e4(eU),e8=(s=(0,V.yj)({op:"Async",[V._3](e){let t=!1,a=!1,s=this.withSignal?new AbortController:void 0,l=this.register.call(e.cache.scheduler,s=>{t||(t=!0,a?e.evaluate(s):a=s)},s?.signal);return!1!==a?a:(a=!0,e._yielded=()=>{t=!0},void 0===s&&void 0===l||e._stack.push(e9(()=>(t=!0,s?.abort(),l??t1))),V.GN)}}),(l=function(e,t){this.register=e,this.withSignal=t}).prototype=s,function(e,t){return new l(e,t)}),e9=(0,V.Uf)({op:"AsyncFinalizer",[V.u4](e){e.interruptible&&(e.interruptible=!1,e._stack.push(s2))},[V.Sc](e,t){return J(e)?tV(sm((0,V.cb)(e),this[V.a2]()),()=>eX(e)):eX(e)}}),te=e=>e8(e,e.length>=2),tt=te(v.Yi),ta=(...e)=>{if(1===e.length){let t=e[0];return eZ(()=>td(t()))}let[t,a]=e;return eZ(()=>td(a.call(t.self)))},ts=(e,...t)=>{let a=0===t.length?function(){return eZ(()=>td(e.apply(this,arguments)))}:function(){let a=eZ(()=>td(e.apply(this,arguments)));for(let e=0;e<t.length;e++)a=t[e](a,...arguments);return a};return tl(e.length,a)},tl=(e,t)=>Object.defineProperty(t,"length",{value:e,configurable:!0}),ti=U(2),to=function(){let e,t="string"==typeof arguments[0],a=t?arguments[0]:"Effect.fn",s=t?arguments[1]:void 0,l=(0,E.jt)();return(0!==l&&((0,E.ft)(2),e=new globalThis.Error,(0,E.ft)(l)),t)?(l,...i)=>tr(a,l,e,i,t,s):tr(a,arguments[0],e,Array.prototype.slice.call(arguments,1),t,s)},tr=(e,t,a,s,l,i)=>{let o="function"==typeof t?t:s.shift().bind(t.self),r=`${e} (definition)`,n=a?ti(()=>a.stack):v.MN;return tl(o.length,function(...t){let a,c=eZ(()=>{let e=o.apply(this,arguments);return(0,V.yw)(e)?e:td(e)});for(let e=0;e<s.length;e++)c=s[e](c,...t);if(!(0,V.yw)(c))return c;let d=(0,E.jt)();return 0!==d&&((0,E.ft)(2),a=new globalThis.Error,(0,E.ft)(d)),ai(l?ia(e,i,e=>is(c,e)):c,I.vA,t=>({name:e,stack:a?ti(()=>a.stack):v.MN,parent:{name:r,stack:n,parent:t}}))})},tn=(e,...t)=>tl(e.length,0===t.length?function(){return tc(()=>e.apply(this,arguments))}:function(){let a=tc(()=>e.apply(this,arguments));for(let e of t)a=e(a,...arguments);return a}),tc=e=>{try{let t,a=e();for(;;){let s=a.next(t);if(s.done)return eU(s.value);let l=s.value;if(l&&"Success"===l._tag){t=l.value;continue}{if(l&&"Failure"===l._tag)return s.value;let t=!0;return eZ(()=>t?(t=!1,tV(s.value,e=>td(a,e))):eZ(()=>td(e())))}}}catch(e){return eQ(e)}},td=(i=(0,V.yj)({op:"Iterator",[V.ee](e,t){let a=this.iterator;for(;;){let s=a.next(e);if(s.done)return eU(s.value);if(!tq(s.value))return t._stack.push(this),s.value;if("Failure"===s.value._tag)return s.value;e=s.value.value}},[V._3](e){return this[V.ee](this.initial,e)}}),(o=function(e,t){this.iterator=e,this.initial=t}).prototype=i,function(e,t){return new o(e,t)}),tp=(0,v.XY)(2,(e,t)=>new tu(e,tf,eU(t))),th=function(e){return e._stack.push(this),this[V.a2]},tg=(0,V.yj)({op:"OnSuccess",[V._3]:th}),tu=function(e,t,a){this[V.a2]=e,this[V.ee]=t,this.payload=a};tu.prototype=tg;let tf=function(){return this.payload},tm=function(e,t){return t.succeedWith(this.payload)},tv=(r="~effect/Effect/stackProbe",({[r]:function(){return Error().stack}})[r]()?.includes("[as "+r+"]")===!0),ty=function(e,t){let a=this.payload;return t.succeedWith(tv?a(e):(0,P.s)(()=>a(e)))},tw=function(e){return(0,this.payload)(e)},tx=function(e){return new tu((0,this.payload)(e),tm,e)},tb=function(e){return new tu(this.payload,tm,e)},tk=e=>tE(e,y.some),tM=e=>a7(e,{onFailure:eU,onSuccess:eY}),tC=(0,v.XY)(2,(e,t)=>new tu(e,(0,V.yw)(t)?tf:tw,t)),tz=(0,v.XY)(2,(e,t)=>new tu(e,(0,V.yw)(t)?tb:tx,t)),t_=e=>new tu(e,tf,t1),tL=e=>ak(e,eY),tB=(e,t)=>(0,V.R6)(a=>{let s=new Set;return sE(a,()=>0===s.size?void 0:eE(s)),te(l=>{let i=g.Ts(e),o=i.length,r=0,n=!1,c=[],d=(e,s,i)=>{if(r++,"Failure"===e._tag){c.push(...e.cause.reasons),r>=o&&l(eX((0,V.b5)(c)));return}let d=!n;n=!0,l(e),d&&t?.onWinner&&t.onWinner({fiber:s,index:i,parentFiber:a})};for(let e=0;e<o;e++){let t=lB(a,i[e],!0,!0,!1);if(s.add(t),t.addObserver(a=>{s.delete(t),d(a,t,e)}),n)break}})}),tA=(e,t)=>(0,V.R6)(a=>{let s=new Set;return sE(a,()=>0===s.size?void 0:eE(s)),te(l=>{let i=!1,o=0;for(let r of e){if(i)break;let e=o++,n=lB(a,r,!0,!0,!1);s.add(n),n.addObserver(o=>{s.delete(n);let r=!i;i=!0,l(o),r&&t?.onWinner&&t.onWinner({fiber:n,index:e,parentFiber:a})})}})}),tS=(0,v.XY)(e=>(0,V.yw)(e[1]),(e,t,a)=>tB([e,t],a)),tP=(0,v.XY)(e=>(0,V.yw)(e[1]),(e,t,a)=>tA([e,t],a)),tV=(0,v.XY)(2,(e,t)=>new tu(e,tw,t)),tH=(0,v.XY)(2,(e,t)=>tq(e)?"Success"===e._tag?t.onSuccess(e.value):t.onFailure(e.cause):aQ(e,t)),tq=e=>void 0!==e[V.IH],tF=(0,v.XY)(2,(e,t)=>tq(e)?"Success"===e._tag?t(e.value):e:tV(e,t)),tI=e=>tV(e,v.D_),tE=(0,v.XY)(2,(e,t)=>new tu(e,ty,t)),tO=(0,v.XY)(2,(e,t)=>tq(e)?t0(e,t):tE(e,t)),tU=(0,v.XY)(2,(e,t)=>tq(e)?t2(e,t):aZ(e,t)),tX=(0,v.XY)(2,(e,t)=>tq(e)?t3(e,t):aG(e,t)),tY=(0,v.XY)(2,(e,t)=>{if(tq(e)){if("Success"===e._tag)return e;let a=R(e.cause);return x.N6(a)?e:t(a.success)}return aL(e,t)}),tT=e=>(0,V.cb)(Z(e)),tZ=e=>"Success"===e._tag,tG=e=>"Success"===e._tag?x.Py(e):x.fJ(e),tD=e=>"Success"===e._tag?x.Py(e.value):x.fJ(e),tR=e=>"Failure"===e._tag,t$=e=>"Failure"===e._tag?x.Py(e):x.fJ(e),tj=e=>"Failure"===e._tag?x.Py(e.cause):x.fJ(e),tN=b(tj,R),tW=b(tj,W),tJ=e=>"Failure"===e._tag&&J(e.cause),tK=e=>"Failure"===e._tag&&j(e.cause),tQ=e=>"Failure"===e._tag&&G(e.cause),t1=(0,V.xt)(void 0),t0=(0,v.XY)(2,(e,t)=>"Success"===e._tag?(0,V.xt)(t(e.value)):e),t2=(0,v.XY)(2,(e,t)=>{if("Success"===e._tag)return e;let a=R(e.cause);return x.N6(a)?e:(0,V.Rk)(t(a.success))}),t3=(0,v.XY)(2,(e,t)=>{if("Success"===e._tag)return(0,V.xt)(t.onSuccess(e.value));let a=R(e.cause);return x.N6(a)?e:(0,V.Rk)(t.onFailure(a.success))}),t5=(0,v.XY)(2,(e,t)=>tZ(e)?(0,V.xt)(t):e),t4=(0,v.XY)(2,(e,t)=>tZ(e)?t:e),t6=(0,v.XY)(2,(e,t)=>tZ(e)?t.onSuccess(e.value):t.onFailure(e.cause)),t7=t5(void 0),t8=e=>{let t=[];for(let a of e)"Failure"===a._tag&&t.push(...a.cause.reasons);return 0===t.length?t1:(0,V.cb)((0,V.b5)(t))},t9=e=>tZ(e)?y.some(e.value):y.none(),ae=e=>tR(e)?y.some(e.cause):y.none(),at=e=>{let t=tN(e);return x.N6(t)?y.none():y.some(t.success)},aa=e=>e,as=e=>(0,V.R6)(t=>eU(u.om(t.context,e))),al=(0,v.XY)(2,(e,t)=>(0,V.R6)(a=>{let s=a.context,l=t(s);return s===l||(a.setContext(l),sE(a,()=>{a.setContext(s)})),e})),ai=(0,v.XY)(3,(e,t,a)=>al(e,e=>{let s=u.fp(e,t),l=a(s);return s===l?e:u.WQ(e,t,l)})),ao=(e,t,a)=>s1((0,V.R6)(s=>{let l=u.fp(s.context,e),i=t(l);return s.setContext(u.WQ(s.context,e,i)),sx(u.fp(s.context,sh),t=>{let o,r=u.om(s.context,e);if(y.isNone(r))return e0;let n=r.value;if(a?.reset===void 0){if(n!==i)return e0;o=l}else o=a.reset(l,i,n);return s.setContext(u.WQ(s.context,e,o)),e0})})),ar=()=>an,an=(0,V.R6)(e=>eU(e.context)),ac=e=>(0,V.R6)(t=>e(t.context)),ad=(0,v.XY)(2,(e,t)=>al(e,(0,v.dY)(t))),ap=(0,v.XY)(2,(e,t)=>tq(e)?e:al(e,u.h1(t))),ah=function(){return 1==arguments.length?(0,v.XY)(2,(e,t)=>ag(e,arguments[0],t)):(0,v.XY)(3,(e,t,a)=>ag(e,t,a)).apply(this,arguments)},ag=(e,t,a)=>al(e,u.WQ(t,a)),au=(0,v.XY)(3,(e,t,a)=>tV(a,a=>ah(e,t,a))),af=(0,v.XY)(e=>(0,V.yw)(e[1]),(e,t,a)=>am(e,t,(e,t)=>[e,t],a)),am=(0,v.XY)(e=>(0,V.yw)(e[1]),(e,t,a,s)=>s?.concurrent?tE(le([e,t],{concurrency:2}),([e,t])=>a(e,t)):tV(e,e=>tE(t,t=>a(e,t)))),av=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,t,a)=>lv(e,t,a?e=>eY(a(e)):()=>eY(new V.Xm))),ay=(0,v.XY)(2,(e,t)=>tV(t,t=>t?tk(e):eW)),aw=(0,v.XY)(2,(e,t)=>Array.from({length:t},()=>e)),ax=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,t,a)=>le(aw(e,t),a)),ab=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,t)=>ln({while:v.ue,body:(0,v.dY)(t?.disableYield?e:tV(e,e=>ej)),step:v.Yi})),ak=(0,v.XY)(2,(e,t)=>new aC(e,1!==t.length?e=>t(e):t)),aM=(0,V.yj)({op:"OnFailure",[V._3]:th}),aC=function(e,t){this[V.a2]=e,this[V.Sc]=t};aC.prototype=aM;let az=(0,v.XY)(3,(e,t,a)=>ak(e,e=>t(e)?a(e):eX(e))),a_=(0,v.XY)(3,(e,t,a)=>ak(e,e=>{let s=t(e);return x.N6(s)?eX(s.failure):a(s.success,e)})),aL=(0,v.XY)(2,(e,t)=>a_(e,R,e=>t(e))),aB=e=>a7(e,{onFailure:e=>(0,V.PW)(e)?eW:eY(e),onSuccess:eN}),aA=(0,v.XY)(2,(e,t)=>a_(e,W,t)),aS=(0,v.XY)(2,(e,t)=>ak(e,e=>tC(t(e),eX(e)))),aP=(0,v.XY)(3,(e,t,a)=>az(e,t,e=>tC(a(e),eX(e)))),aV=(0,v.XY)(3,(e,t,a)=>ak(e,e=>{let s=t(e);return x.N6(s)?eX(e):tC(a(s.success,e),eX(e))})),aH=(0,v.XY)(2,(e,t)=>aV(e,R,e=>t(e))),aq=(0,v.XY)(3,(e,t,a)=>{let s=Array.isArray(t)?e=>(0,w.i5)(e,"_tag")&&t.includes(e._tag):(0,w.$J)(t);return aH(e,e=>s(e)?a(e):e0)}),aF=(0,v.XY)(2,(e,t)=>aV(e,W,e=>t(e))),aI=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,t,a,s)=>ak(e,e=>{let l=R(e);return x.N6(l)?eX(l.failure):t(l.success)?a(l.success):s?s(l.success):eX(e)})),aE=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,t,a,s)=>ak(e,e=>{let l=R(e);if(x.N6(l))return eX(l.failure);let i=t(l.success);return x.N6(i)?s?s(i.failure):eX(e):a(i.success)})),aO=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,t,a,s)=>aI(e,Array.isArray(t)?e=>(0,w.i5)(e,"_tag")&&t.includes(e._tag):(0,w.$J)(t),a,s)),aU=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,t,a)=>{let s;return aE(e,e=>(s??=Object.keys(t),(0,w.i5)(e,"_tag")&&(0,w.Kg)(e._tag)&&s.includes(e._tag)?x.Py(e):x.fJ(e)),e=>t[e._tag](e),a)}),aX=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,t,a,s,l)=>aI(e,e=>(0,w.$J)(e,t)&&(0,w.i5)(e,"reason")&&(void 0!==l||(0,w.$J)(e.reason,a)),e=>{let t=e.reason;return(0,w.$J)(t,a)?s(t,e):l?l(t,e):eY(e)})),aY=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,t,a,s)=>{let l;return aI(e,e=>(0,w.$J)(e,t)&&(0,w.i5)(e,"reason")&&(0,w.i5)(e.reason,"_tag")&&(0,w.Kg)(e.reason._tag)&&(void 0!==s||(l??=Object.keys(a)).includes(e.reason._tag)),e=>{let t=e.reason;return(l??=Object.keys(a)).includes(t._tag)?a[t._tag](t,e):s?s(t,e):eY(e)})}),aT=(0,v.XY)(2,(e,t)=>aE(e,e=>(0,w.$J)(e,t)&&(0,w.i5)(e,"reason")?x.Py(e.reason):x.fJ(e),eY)),aZ=(0,v.XY)(2,(e,t)=>aL(e,e=>e1(()=>t(e)))),aG=(0,v.XY)(2,(e,t)=>a7(e,{onFailure:e=>e1(()=>t.onFailure(e)),onSuccess:e=>eT(()=>t.onSuccess(e))})),aD=e=>aL(e,eQ),aR=(0,v.XY)(2,(e,t)=>aL(e,e=>eT(()=>t(e)))),a$=e=>eZ(()=>{let t=e[Symbol.iterator](),a=t.next();return a.done?eQ(Error("Received an empty collection of effects")):function e(a){let s=t.next();return s.done?a.value:aL(a.value,t=>e(s))}(a)}),aj=e=>aL(e,t=>tV(ej,()=>aj(e))),aN=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,t)=>{if(!t?.log)return a7(e,{onFailure:e=>e0,onSuccess:e=>e0});let a=iR(!0===t.log?void 0:t.log);return aQ(e,{onFailure(e){let s=D(e);return x.N6(s)?eX(s.failure):void 0===t.message?a(e):a(t.message,e)},onSuccess:e=>e0})}),aW=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,t)=>{if(!t?.log)return aQ(e,{onFailure:e=>e0,onSuccess:e=>e0});let a=iR(!0===t.log?void 0:t.log);return aQ(e,{onFailure:e=>void 0===t.message?a(e):a(t.message,e),onSuccess:e=>e0})}),aJ=e=>a8(e,{onFailure:y.none,onSuccess:y.some}),aK=e=>a9(e,{onFailure:x.fJ,onSuccess:x.Py}),aQ=(0,v.XY)(2,(e,t)=>new a0(e,1!==t.onSuccess.length?e=>t.onSuccess(e):t.onSuccess,1!==t.onFailure.length?e=>t.onFailure(e):t.onFailure)),a1=(0,V.yj)({op:"OnSuccessAndFailure",[V._3]:th}),a0=function(e,t,a){this[V.a2]=e,this[V.ee]=t,this[V.Sc]=a};a0.prototype=a1;let a2=function(e,t){let a=this.payload;return t.succeedWith(tv?a.onSuccess(e):(0,P.s)(()=>a.onSuccess(e)))},a3=(e,t)=>{let a=(0,V.yj)({op:e,[V._3]:th,[V.ee]:a2,[V.Sc]:t}),s=function(e,t){this[V.a2]=e,this.payload=t};return s.prototype=a,s},a5=a3("Match",function(e,t){let a=e.reasons.find(V.lC);if(void 0===a)return eX(e);let s=this.payload;return t.succeedWith(tv?s.onFailure(a.error):(0,P.s)(()=>s.onFailure(a.error)))}),a4=a3("MatchCause",function(e,t){let a=this.payload;return t.succeedWith(tv?a.onFailure(e):(0,P.s)(()=>a.onFailure(e)))}),a6=(0,v.XY)(2,(e,t)=>new a4(e,t)),a7=(0,v.XY)(2,(e,t)=>aQ(e,{onFailure:e=>{let a=e.reasons.find(V.lC);return a?t.onFailure(a.error):eX(e)},onSuccess:t.onSuccess})),a8=(0,v.XY)(2,(e,t)=>new a5(e,t)),a9=(0,v.XY)(2,(e,t)=>{if(tq(e)){if("Success"===e._tag)return(0,V.xt)(t.onSuccess(e.value));let a=R(e.cause);return x.N6(a)?e:(0,V.xt)(t.onFailure(a.success))}return a8(e,t)}),se=(0,v.XY)(2,(e,t)=>tq(e)?"Success"===e._tag?(0,V.xt)(t.onSuccess(e.value)):(0,V.xt)(t.onFailure(e.cause)):a6(e,t)),st=e=>tq(e)?(0,V.xt)(e):sa(e),sa=(0,V.Uf)({op:"Exit",[V._3](e){return e._stack.push(this),this[V.a2]},[V.ee]:(e,t,a)=>t.succeedWith(a??(0,V.xt)(e)),[V.Sc]:(e,t,a)=>t.succeedWith(a??(0,V.cb)(e))}),ss=a9({onFailure:()=>!0,onSuccess:()=>!1}),sl=a9({onFailure:()=>!1,onSuccess:()=>!0}),si=(0,v.XY)(2,(e,t)=>tC(iy(t),e)),so=(0,v.XY)(2,(e,t)=>tV(sn(e,t.duration),e=>y.isNone(e)?t.orElse():eU(e.value))),sr=(0,v.XY)(2,(e,t)=>{let a=f.bN(t);return so(e,{duration:a,orElse:()=>eY(new iC(`Operation timed out after '${f.GP(a)}'`))})}),sn=(0,v.XY)(2,(e,t)=>tP(tk(e),tp(iy(t),y.none()))),sc=e=>iv(t=>{let a=t.monotonicTimeNanosUnsafe();return tE(e,e=>[f.cF(t.monotonicTimeNanosUnsafe()-a),e])}),sd="~effect/Scope",sp="~effect/Scope/Closeable",sh=u.kl("effect/Scope"),sg=(e,t)=>(0,V.R6)(a=>{let s=su(e,t);return void 0===s?e0:(s4(a),s)}),su=(e,t)=>{let a=e.state;if("Closed"===a._tag||(e.state={_tag:"Closed",exit:t},void 0!==e.parent&&sM(e.parent,e),"Empty"===a._tag))return;if(void 0!==a.finalizer)return sf(a.finalizer,t);let s=a.finalizers;return 1===s.size?sf(s.values().next().value,t):sv(e,s,t)},sf=(e,t)=>{try{return e(t)}catch(e){return(0,V.V2)(e)}},sm=(e,t)=>tZ(e)?t:ak(t,t=>eX((0,V.h2)(e.cause,t))),sv=ts(function*(e,t,a){let s=[],l=[],i=Array.from(t.values()),o=eM();for(let t=i.length-1;t>=0;t--){let r=i[t];"sequential"===e.strategy?s.push((yield*st(sf(r,a)))):l.push(lB(o,sf(r,a),!0,!0,"inherit"))}return l.length>0&&(s=yield*eV(l)),yield*t8(s)}),sy=(e,t)=>eT(()=>sw(e,t)),sw=(e,t)=>{let a=sz(t,e);return"Closed"===e.state._tag?a.state=e.state:sk(e,a,e=>sg(a,e)),a},sx=(e,t)=>eZ(()=>"Closed"===e.state._tag?t(e.state.exit):(sk(e,{},t),e0)),sb=(e,t)=>sx(e,(0,v.dY)(t)),sk=(e,t,a)=>{if("Empty"===e.state._tag)e.state={_tag:"Open",finalizerKey:t,finalizer:a,finalizers:void 0};else if("Open"===e.state._tag){let s=e.state;void 0!==s.finalizer&&(s.finalizers=new Map([[s.finalizerKey,s.finalizer]]),s.finalizerKey=void 0,s.finalizer=void 0),s.finalizers.set(t,a)}},sM=(e,t)=>{if("Open"!==e.state._tag)return;let a=e.state;a.finalizerKey===t?e.state=s_:void 0!==a.finalizers&&(a.finalizers.delete(t),0===a.finalizers.size&&(e.state=s_))},sC=e=>sz(e,void 0),sz=(e="sequential",t)=>({[sp]:sp,[sd]:sd,strategy:e,parent:t,state:s_}),s_={_tag:"Empty"},sL=e=>eT(()=>sC(e)),sB=sh,sA=ah(sh),sS=e=>(0,V.R6)(t=>{let a=t.context,s=sC();return t.setContext(u.WQ(t.context,sh,s)),sE(t,e=>(t.setContext(a),su(s,e))),e}),sP=(0,v.XY)(2,(e,t)=>sO(sA(e,t),e=>eZ(()=>su(t,e)??e0))),sV=e=>eZ(()=>{let t=sC();return sO(e(t),e=>eZ(()=>su(t,e)??e0))}),sH=(e,t,a)=>ac(s=>s7(l=>tV(sB,i=>tz(a?.interruptible?l(e):e,e=>sx(i,a=>ap(t(e,a),s)))))),sq=e=>tV(sB,t=>ac(a=>sx(t,t=>ap(e(t),a)))),sF=(n=(0,V.yj)({op:"OnExit",[V._3](e){return e._stack.push(this),this.effect},[V.u4](e){e.interruptible&&!0!==this.interruptible&&(e._stack.push(s2),e.interruptible=!1)},[V.ee](e,t,a){let s;a??=(0,V.xt)(e);try{s=this.onExit(a)}catch(e){s=(0,V.V2)(e)}return s?tV(s,e=>a):a},[V.Sc](e,t,a){let s;a??=(0,V.cb)(e);try{s=this.onExit(a)}catch(e){s=(0,V.V2)(e)}return s?tV(sm(a,s),e=>a):a}}),(c=function(e,t,a){this.effect=e,this.onExit=t,this.interruptible=a}).prototype=n,c),sI=(e,t,a)=>new sF(e,t,a),sE=(e,t)=>{e._stack.push(new sF(void 0,t,void 0))},sO=(0,v.XY)(2,sI),sU=(0,v.XY)(2,(e,t)=>sO(e,e=>t)),sX=(0,v.XY)(3,(e,t,a)=>sO(e,e=>t(e)?a(e):e0)),sY=(0,v.XY)(3,(e,t,a)=>sO(e,e=>{let s=t(e);return x.N6(s)?e0:a(s.success,e)})),sT=(0,v.XY)(2,(e,t)=>sY(e,tj,t)),sZ=(0,v.XY)(3,(e,t,a)=>sX(e,e=>"Failure"===e._tag&&t(e.cause),e=>a(e.cause))),sG=(0,v.XY)(3,(e,t,a)=>sO(e,e=>{if("Failure"!==e._tag)return e0;let s=t(e.cause);return x.N6(s)?e0:a(s.success,e.cause)})),sD=(0,v.XY)(2,(e,t)=>sG(Q,t)(e)),sR=(e,t,a)=>s7(s=>tV(e,e=>sI(eZ(()=>s(t(e))),t=>a(e,t),!0))),s$=e=>sH(e,e=>(0,w.i5)(e,Symbol.asyncDispose)?e3(()=>e[Symbol.asyncDispose]()):eT(()=>e[Symbol.dispose]())),sj=(0,v.XY)(2,(e,t)=>eT(()=>sW(e,"function"==typeof t?e=>f.kE(f.bN(t(e))):(0,v.dY)(f.kE(f.bN(t)))))),sN=(0,v.dY)(1/0),sW=(e,t)=>{let a,s,l=0,i=(e,t)=>(t.awaiters++,sE(e,()=>{if(!(--t.awaiters>0)&&s===t)return s=void 0,eF(t.fiber)}),eH(t.fiber));return[(0,V.R6)(o=>{if(void 0!==s)return i(o,s);if(void 0!==a&&(1/0===l||o.getRef(ip).currentTimeMillisUnsafe()<l))return a;a=void 0;let r=o.getRef(ip),n={fiber:void 0,awaiters:0};return s=n,n.fiber=lB(o,sI(e,e=>{if(s!==n||(s=void 0,tJ(e)))return;let i=t(e);l=1/0===i?1/0:r.currentTimeMillisUnsafe()+i,a=e}),!0,!0),n.fiber._exit??i(o,n)}),eT(()=>{a=void 0})]},sJ=(0,v.XY)(2,(e,t)=>tE(sj(e,t),e=>e[0])),sK=e=>eT(()=>sW(e,sN)[0]),sQ=(0,V.R6)(e=>eX(Z(e.id))),s1=e=>(0,V.R6)(t=>(t.interruptible&&(t.interruptible=!1,t._stack.push(s2)),e)),s0=(0,V.Uf)({op:"SetInterruptible",[V.u4](e){if(e.interruptible=this[V.a2],e._interruptedCause&&e.interruptible)return()=>eX(e._interruptedCause)}}),s2=s0(!0),s3=s0(!1),s5=e=>{if(e.interruptible=!0,e._stack.push(s3),e._interruptedCause)return eX(e._interruptedCause)},s4=e=>{e.interruptible&&(e.interruptible=!1,e._stack.push(s2))},s6=e=>(0,V.R6)(t=>t.interruptible?e:s5(t)??e),s7=e=>(0,V.R6)(t=>t.interruptible?(t.interruptible=!1,t._stack.push(s2),e(s6)):e(v.D_)),s8=e=>(0,V.R6)(t=>{if(t.interruptible)return e(v.D_);let a=s5(t),s=e(s1);return a??s}),s9=tE(sH(eT(()=>new AbortController),e=>eT(()=>e.abort())),e=>e.signal),le=(e,t)=>(0,w.xZ)(e)?t?.mode==="result"?lc(e,aK,t):lc(e,v.D_,t):t?.discard?"result"===t.mode?lc(Object.values(e),aK,t):lc(Object.values(e),v.D_,t):eZ(()=>{let a={};return tp(lc(Object.entries(e),([e,s])=>tE(t?.mode==="result"?aK(s):s,t=>{F.x(a,e,t)}),{discard:!0,concurrency:t?.concurrency}),a)}),lt=(0,v.XY)(e=>(0,w.xZ)(e[0])&&!(0,V.yw)(e[0]),(e,t,a)=>tE(lc(e,(e,a)=>aK(t(e,a)),a),e=>g.jB(e,v.D_))),la=(0,v.XY)(3,(e,t,a)=>{let s=g.Ts(e);return 0===s.length?eT(t):eZ(()=>{let e=0,l=t();return tE(ln({while:()=>e<s.length,body:()=>a(l,s[e],e),step(t){l=t,e++}}),()=>l)})}),ls=(0,v.XY)(e=>(0,w.xZ)(e[0])&&!(0,V.yw)(e[0]),(e,t,a)=>tV(lt(e,t,{concurrency:a?.concurrency}),([e,t])=>g.CZ(t)?eY(t):a?.discard?e0:eU(e))),ll=(0,v.XY)(e=>(0,w.xZ)(e[0])&&!(0,V.yw)(e[0]),(e,t)=>eZ(()=>{let a=e[Symbol.iterator](),s=a.next();return s.done?eU(y.none()):li(a,0,t,s.value)})),li=(e,t,a,s)=>tV(a(s,t),l=>{if(l)return eU(y.some(s));let i=e.next();return i.done?eU(y.none()):li(e,t+1,a,i.value)}),lo=(0,v.XY)(e=>(0,w.xZ)(e[0])&&!(0,V.yw)(e[0]),(e,t)=>eZ(()=>{let a=e[Symbol.iterator](),s=a.next();return s.done?eU(y.none()):lr(a,0,t,s.value)})),lr=(e,t,a,s)=>tV(a(s,t),s=>{if(x.oJ(s))return eU(y.some(s.success));let l=e.next();return l.done?eU(y.none()):lr(e,t+1,a,l.value)}),ln=(0,V.Uf)({op:"While",[V.ee](e,t){return(this[V.a2].step(e),this[V.a2].while())?(t._stack.push(this),this[V.a2].body()):t1},[V._3](e){return this[V.a2].while()?(e._stack.push(this),this[V.a2].body()):t1}}),lc=(0,v.XY)(e=>"function"==typeof e[1],(e,t,a)=>eZ(()=>{let s=lh(a?.concurrency);if(1===s)return lp(e,t,a);let l=g.Ts(e),i=l.length;if(0===i)return a?.discard?e0:eU([]);let o=a?.discard?void 0:Array(i),r=lm({f:t,out:o},l,{concurrency:s});return r?tp(r,o):eU(o)})),ld=e=>tV(e,e=>{let t=e[Symbol.iterator]().next();return t.done?eY(new V.Xm):eU(t.value)}),lp=(e,t,a)=>eZ(()=>{let s=a?.discard?void 0:[],l=e[Symbol.iterator](),i=l.next(),o=0;return tp(ln({while:()=>!i.done,body:()=>t(i.value,o++),step:e=>{s&&s.push(e),i=l.next()}}),s)}),lh=e=>"unbounded"===e?1/0:Math.max(1,e??1),lg=()=>e=>{let t=e.onItem,a=e.step,s=(e,t,s,i,o)=>tV(st(o),o=>a(e,t[s],o,s)??l(e,t,s+1,i)??e0),l=(e,l,i=0,o=l.length)=>{for(;i<o;i++){let r=l[i],n=t(e,r,i);if(!tq(n))return s(e,l,i,o,n);let c=a(e,r,n,i);if(c)return"Failure"===c._tag?c:void 0}};return l},lu=e=>{let t=e.onItem,a=e.step;return(e,s,l)=>{let i,o,r,n,c,d=0,p=l.end??s.length,h=l.concurrency,g=!1,u=e=>{let t=(0,V.V2)(e);return n=t,g=!0,o&&o.size>0?tV(s1(eE(Array.from(o))),()=>n??t):t},f=()=>{let l=!1;for(;!n&&d<p;d++){let p=s[d],m=c??t(e,p,d);if(tq(m)){if(n=a(e,p,m,d))break}else{if(!i)return te(e=>{let t;i=eM(),o=new Set,c=m,r=e;try{t=f()}catch(t){return e(u(t))}return t?e(t):eZ(()=>(n??=t1,tV(o?eE(o):e0,()=>n?._tag==="Failure"?n:e0)))});c=void 0;let t=lB(i,m,!0,!0,"inherit");if(t._exit){if(n=a(e,p,t._exit,d))break;continue}o.add(t);let s=d;if(t.addObserver(i=>{o.delete(t);try{if(n){if("Failure"===i._tag){let e=i.cause.reasons.filter(e=>"Interrupt"!==e._tag);if(e.length>0){let t=(0,V.b5)(e);n=(0,V.cb)("Failure"===n._tag?(0,V.h2)(n.cause,t):t)}}}else{let t=a(e,p,i,s);t&&(n=t,f())}if(l){let e=f();e&&r(e)}else g&&0===o.size&&r(n??e0)}catch(e){r(u(e))}}),o.size<h)continue;l=!0,d++;return}}if(g=!0,n){if(o&&o.size>0){let e=eA(i);o.forEach(t=>t.interruptUnsafe(i.id,e));return}if(r||"Failure"===n._tag)return n}else if(r)if(!o)return t1;else 0===o.size&&r(e0)};return f()}},lf=()=>e=>lu(e),lm=lu({onItem:(e,t,a)=>e.f(t,a),step(e,t,a,s){if("Failure"===a._tag)return a;e.out&&(e.out[s]=a.value)}}),lv=(0,v.XY)(3,(e,t,a)=>tV(e,e=>t(e)?eU(e):a(e))),ly=(0,v.XY)(3,(e,t,a)=>tV(e,e=>{let s=t(e);return x.N6(s)?a(s.failure):eU(s.success)})),lw=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,t,a)=>ly(e,t,a?e=>eY(a(e)):()=>eY(new V.Xm))),lx=(0,v.XY)(e=>(0,w.xZ)(e[0])&&!(0,V.yw)(e[0]),(e,t,a)=>eZ(()=>{let s=[];return tp(lc(e,(e,a)=>{let l=t(e,a);return"boolean"==typeof l?(l&&s.push(e),e0):tE(l,t=>{t&&s.push(e)})},{discard:!0,concurrency:a?.concurrency}),s)})),lb=(0,v.XY)(e=>(0,w.xZ)(e[0])&&!(0,V.yw)(e[0]),(e,t)=>eZ(()=>{let a=[];for(let s of e){let e=t(s);x.oJ(e)&&a.push(e.success)}return eU(a)})),lk=(0,v.XY)(e=>(0,w.xZ)(e[0])&&!(0,V.yw)(e[0]),(e,t,a)=>eZ(()=>{let s=[];return tp(lc(e,e=>tE(t(e),e=>{x.oJ(e)&&s.push(e.success)}),{discard:!0,concurrency:a?.concurrency}),s)})),lM=eU({}),lC=H.Jr(tE),lz=H.oI(tE,tV),l_=H.zM(tE),lL=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,t)=>(0,V.R6)(a=>(eB.interruptChildren??=eS,eU(lB(a,e,t?.startImmediately,!1,t?.uninterruptible??!1))))),lB=(e,t,a=!1,s=!1,l=!1)=>{let i="inherit"===l?e.interruptible:!l,o=new eC(e.context,i);return a?o.evaluate(t):(o._asyncContext=ek(),e.currentDispatcher.scheduleTask(()=>o.evaluate(t),0)),s||o._exit||(e.children().add(o),o._parent=e),o},lA=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,t)=>(0,V.R6)(a=>eU(lB(a,e,t?.startImmediately,!0,t?.uninterruptible)))),lS=e=>(0,V.R6)(t=>{let a=t._children&&new Set(t._children),s=t.interruptible;return sI(e,e=>{let l=t._children;if(void 0===l||0===l.size)return e0;a&&(l=z.pb(l,e=>!a.has(e)));let i=t_(eV(l));return s?s6(i):i})}),lP=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,t,a)=>(0,V.R6)(s=>{let l=lB(s,e,a?.startImmediately,!0,a?.uninterruptible);if(!l._exit)if("Closed"!==t.state._tag){let e={};sk(t,e,()=>e4(e=>e===l.id?e0:eF(l))),l.addObserver(()=>sM(t,e))}else l.interruptUnsafe(s.id,eA(s));return eU(l)})),lV=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,t)=>tV(sB,a=>lP(e,a,t))),lH=e=>(t,a)=>{let s=new eC(a?.scheduler?u.WQ(e,A._F,a.scheduler):e,a?.uninterruptible!==!0);if(s.evaluate(t),s._exit)return s;if(a?.signal)if(a.signal.aborted)s.interruptUnsafe();else{let e=()=>s.interruptUnsafe();a.signal.addEventListener("abort",e,{once:!0}),s.addObserver(()=>a.signal.removeEventListener("abort",e))}return a?.onFiberStart&&a.onFiberStart(s),s},lq=(0,v.XY)(2,(e,t)=>{if(e._exit)return e;if("Closed"===t.state._tag)return e.interruptUnsafe(e.id),e;let a={};return sk(t,a,()=>eF(e)),e.addObserver(()=>sM(t,a)),e}),lF=lH(u.Ie()),lI=e=>{let t=lH(e);return(e,a)=>{let s=t(e,a);return a?.onExit&&s.addObserver(a.onExit),e=>s.interruptUnsafe(e)}},lE=lI(u.Ie()),lO=e=>{let t=lH(e);return(e,a)=>{let s=t(e,a);return new Promise(e=>{s.addObserver(t=>e(t))})}},lU=lO(u.Ie()),lX=e=>{let t=lO(e);return(e,a)=>t(e,a).then(e=>{if("Failure"===e._tag)throw eo(e.cause);return e.value})},lY=lX(u.Ie()),lT=e=>{let t=lH(e);return e=>{if(tq(e))return e;let a=t(e,{scheduler:new A.FG("sync")});return a._dispatcher?.flush(),a._exit??(0,V.V2)(new iH(a))}},lZ=lT(u.Ie()),lG=e=>{let t=lT(e);return e=>{let a=t(e);if("Failure"===a._tag)throw eo(a.cause);return a.value}},lD=lG(u.Ie()),lR=eU(!0),l$=eU(!1);class lj{waiters=[];scheduled=void 0;_isOpen;constructor(e){this._isOpen=e}scheduleUnsafe(e){if(0===this.waiters.length)return lR;if(void 0===this.scheduled)this.scheduled=this.waiters,e.currentDispatcher.scheduleTask(this.flushScheduled,0);else for(let e=0;e<this.waiters.length;e++)this.scheduled.push(this.waiters[e]);return this.waiters=[],lR}flushScheduled=()=>{if(void 0===this.scheduled)return;let e=this.scheduled;this.scheduled=void 0;for(let t=0;t<e.length;t++)e[t](t1)};flushWaiters(){let e=this.waiters;this.waiters=[],this.flushScheduled();for(let t=0;t<e.length;t++)e[t](t1)}open=(0,V.R6)(e=>this._isOpen?l$:(this._isOpen=!0,this.scheduleUnsafe(e)));release=(0,V.R6)(e=>this._isOpen?l$:this.scheduleUnsafe(e));openUnsafe(){return!this._isOpen&&(this._isOpen=!0,this.flushWaiters(),!0)}await=te(e=>this._isOpen?e(e0):(this.waiters.push(e),eT(()=>{let t=this.waiters.indexOf(e);-1!==t?this.waiters.splice(t,1):void 0!==this.scheduled&&-1!==(t=this.scheduled.indexOf(e))&&this.scheduled.splice(t,1)})));closeUnsafe(){return!!this._isOpen&&(this._isOpen=!1,!0)}close=eT(()=>this.closeUnsafe());whenOpen=e=>tV(this.await,()=>e);isOpen(){return this._isOpen}}let lN=e=>new lj(e??!1),lW=e=>eT(()=>lN(e)),lJ=(0,V.R6)(e=>eU(e.getRef(S.sh))),lK=(0,v.XY)(2,(e,t)=>ah(e,S.sh,t)),lQ=ah(I.rf),l1=ah(I.nU),l0=BigInt(0),l2={_tag:"Span",spanId:"noop",traceId:"noop",sampled:!1,status:{_tag:"Ended",startTime:l0,endTime:l0,exit:t1},attributes:new Map,links:[],kind:"internal",attribute(){},event(){},end(){},addLinks(){}},l3=e=>e?u.Jt(e.annotations,S.DW)?"Span"===e._tag?l3(y.getOrUndefined(e.parent)):y.none():y.some(e):y.none(),l5=(e,t,a)=>{let s,l=!e.cache.tracerEnabled||a?.annotations&&u.Jt(a.annotations,S.DW),i=a?.parent!==void 0?y.some(a.parent):a?.root?y.none():l3(e.cache.span);if(l){let e;e={name:t,parent:i,annotations:u.WQ(a?.annotations??u.Ie(),S.DW,!0)},s=Object.assign(Object.create(l2),e)}else{let l=e.cache.tracer??S.Vv,o=e.getRef(ip),r=e.getRef(I.nU),n=e.getRef(I.ce),c=e.getRef(I.ls),d=a?.level??e.getRef(S.pX),p=a?.links!==void 0?[...c,...a.links]:0===c.length?[]:c.slice();for(let c in s=l.span({name:t,parent:i,annotations:a?.annotations??u.Ie(),links:p,startTime:r?o.currentTimeNanosUnsafe():l0,kind:a?.kind??"internal",root:a?.root??y.isNone(i),sampled:a?.sampled??((!y.isSome(i)||!1!==i.value.sampled)&&!iU(e.getRef(S.EW),d))}),n)s.attribute(c,n[c]);if(a?.attributes!==void 0)for(let e in a.attributes)s.attribute(e,a.attributes[e])}return s},l4=(e,t)=>(0,V.R6)(a=>eU(l5(a,e,t))),l6=(e,t)=>s1((0,V.R6)(a=>{let s=u.fp(a.context,sh),l=l5(a,e,t??{}),i=a.getRef(ip),o=a.getRef(I.nU);return tp(sx(s,e=>it(l,e,i,o)),l)})),l7=function(){let e="string"!=typeof arguments[0],t=e?arguments[1]:arguments[0],a=O(e?arguments[2]:arguments[1]);if(e){let e=arguments[0];return tV(l6(t,a),t=>il(e,t,a))}return e=>tV(l6(t,a),t=>il(e,t,a))},l8=I.ce,l9=I.ls,ie=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,t,a={})=>{let s=(Array.isArray(t)?t:[t]).map(e=>({span:e,attributes:a}));return ai(e,I.ls,e=>[...e,...s])}),it=(e,t,a,s)=>eT(()=>{"Ended"!==e.status._tag&&e.end(s?a.currentTimeNanosUnsafe():l0,t)}),ia=(e,...t)=>{let a=1===t.length?void 0:t[0],s=t[t.length-1];return(0,V.R6)(t=>{let l=l5(t,e,a),i=t.getRef(ip),o=t.getRef(I.nU);return sE(t,e=>it(l,e,i,o)),s(l)})},is=ah(S.Tv),il=function(){let e=(0,V.yw)(arguments[0]),t=e?arguments[1]:arguments[0],a=e?arguments[2]:arguments[1],s=v.D_;if("Span"===t._tag){var l,i;a=O(a),l=t.name,i="function"==typeof(i=a?.captureStackTrace)?i:v.MN,s=ai(I.vA,e=>({name:l,stack:i,parent:e}))}return e?is(s(arguments[0]),t):e=>is(s(e),t)},ii=function(){let e="string"!=typeof arguments[0],t=e?arguments[1]:arguments[0],a=O(arguments[2]);if(e){let e=arguments[0];return ia(t,arguments[2],t=>il(e,t,a))}let s="function"==typeof arguments[1]?arguments[1]:void 0,l=s?void 0:arguments[1];return(e,...i)=>ia(t,s?s(...i):l,t=>il(e,t,a))},io=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,...t)=>ai(e,I.ce,e=>{let a=1===t.length?{...e,...t[0]}:{...e};return 1===t.length||F.x(a,t[0],t[1]),a})),ir=(...e)=>(0,V.R6)(t=>{let a=t.currentSpanLocal;if(a)if(1===e.length)for(let[t,s]of Object.entries(e[0]))a.attribute(t,s);else a.attribute(e[0],e[1]);return e0}),ic=(0,V.R6)(e=>{let t=e.currentSpanLocal;return t?eU(t):eY(new V.Xm)}),id=(d=S.Tv,(0,V.R6)(e=>eG(u.om(e.context,d)))),ip=u.Or("effect/Clock",{defaultValue:()=>new ih});class ih{currentTimeMillisUnsafe(){return Date.now()}currentTimeMillis=eT(()=>this.currentTimeMillisUnsafe());currentTimeNanosUnsafe(){return im()}currentTimeNanos=eT(()=>this.currentTimeNanosUnsafe());monotonicTimeNanosUnsafe(){return iu()}monotonicTimeNanos=eT(()=>this.monotonicTimeNanosUnsafe());sleep(e){return this.sleepMillis(f.kE(e))}sleepMillis(e){return e<=0?ej:Number.isFinite(e)?te(t=>{let a=e>0x7fffffff?this.sleepMillis(e-0x7fffffff):e0,s=setTimeout(()=>t(a),Math.min(e,0x7fffffff));return eT(()=>clearTimeout(s))}):tt}}let ig=BigInt(1e6),iu=function(){let e=globalThis.process?.hrtime;if("function"==typeof e?.bigint)return()=>e.bigint();if("u">typeof performance&&"function"==typeof performance.now)return()=>BigInt(Math.round(1e6*performance.now()));let t=BigInt(0);return()=>{let e=BigInt(Date.now())*ig;return e>t&&(t=e),t}}(),im=(h=BigInt(1e9),()=>{let e=iu(),t=BigInt(Date.now())*ig;if(void 0===p)p=t-e;else{let a=p+e;(t>a?t-a:a-t)>h&&(p=t-e)}return p+e}),iv=e=>(0,V.R6)(t=>e(t.getRef(ip))),iy=e=>iv(t=>t.sleep(f.bN(e))),iw=iv(e=>e.currentTimeMillis),ix=iv(e=>e.currentTimeNanos),ib=iv(e=>e.monotonicTimeNanos),ik="~effect/Cause/TimeoutError",iM=e=>(0,w.i5)(e,ik);class iC extends(0,V.rN)("TimeoutError"){[ik]=ik;constructor(e){super({message:e})}}let iz="~effect/Cause/IllegalArgumentError",i_=e=>(0,w.i5)(e,iz);class iL extends(0,V.rN)("IllegalArgumentError"){[iz]=iz;constructor(e){super({message:e})}}let iB="~effect/Cause/ExceededCapacityError",iA=e=>(0,w.i5)(e,iB);class iS extends(0,V.rN)("ExceededCapacityError"){[iB]=iB;constructor(e){super({message:e})}}let iP="~effect/Cause/AsyncFiberError",iV=e=>(0,w.i5)(e,iP);class iH extends(0,V.rN)("AsyncFiberError"){[iP]=iP;constructor(e){super({message:"An asynchronous Effect was executed with Effect.runSync",fiber:e})}}let iq="~effect/Cause/UnknownError",iF=e=>(0,w.i5)(e,iq);class iI extends(0,V.rN)("UnknownError"){[iq]=iq;constructor(e,t){super({message:t,cause:e})}}let iE=u.Or("effect/Console",{defaultValue:()=>globalThis.console}),iO=_.zQ(_.wN,e=>{switch(e){case"All":return Number.MIN_SAFE_INTEGER;case"Fatal":return 5e4;case"Error":return 4e4;case"Warn":return 3e4;case"Info":return 2e4;case"Debug":return 1e4;case"Trace":return 0;case"None":return Number.MAX_SAFE_INTEGER}}),iU=_.yJ(iO),iX=u.Or("effect/Logger/CurrentLoggers",{defaultValue:()=>new Set([i$,ij])}),iY=u.Or("effect/Logger/LogToStderr",{defaultValue:v.f4}),iT=function(){let e="string"==typeof arguments[0]?[[arguments[0],arguments[1]]]:Object.entries(arguments[0]);return s1((0,V.R6)(t=>{let a=t.getRef(I.iL),s={...a};for(let t=0;t<e.length;t++){let[a,l]=e[t];F.x(s,a,l)}return t.setContext(u.WQ(t.context,I.iL,s)),sx(u.fp(t.context,sh),s=>{let l=t.getRef(I.iL),i={...l};for(let t=0;t<e.length;t++){let[s,o]=e[t];(l[s]===o||Object.is(l[s],o))&&(Object.hasOwn(a,s)?F.x(i,s,a[s]):delete i[s])}return t.setContext(u.WQ(t.context,I.iL,i)),e0})}))},iZ={"~effect/Logger":{_Message:v.D_,_Output:v.D_},pipe(){return(0,L.tT)(this,arguments)}},iG=e=>{let t=Object.create(iZ);return t.log=e,t},iD=(e,t)=>{let a=e[0].replace(/[\s="]/g,"_");return`${a}=${t-e[1]}ms`},iR=e=>(...t)=>{let a;for(let e=0,s=t.length;e<s;e++){let s=t[e];(0,V.Aj)(s)&&(a?t.splice(e,1):t=t.slice(0,e).concat(t.slice(e+1)),a=a?(0,V.b5)(a.reasons.concat(s.reasons)):s,e--)}return void 0===a&&(a=V.DH),(0,V.R6)(s=>{let l=e??s.cache.logLevel;if(iU(s.cache.minimumLogLevel,l))return e0;let i=s.getRef(ip),o=s.getRef(iX);if(o.size>0){let e=new Date(i.currentTimeMillisUnsafe());for(let i of o)i.log({cause:a,fiber:s,date:e,logLevel:l,message:t})}return e0})},i$=iG(({cause:e,date:t,fiber:a,logLevel:s,message:l})=>{let i=Array.isArray(l)?l.slice():[l];e.reasons.length>0&&i.push(ef(e));let o=t.getTime(),r=a.getRef(I.d8),n="";for(let e of r)n+=` ${iD(e,o)}`;let c=a.getRef(I.iL);Object.keys(c).length>0&&i.push(c);let d=a.getRef(iE);(a.getRef(iY)?d.error:d.log)(`[${t.getHours().toString().padStart(2,"0")}:${t.getMinutes().toString().padStart(2,"0")}:${t.getSeconds().toString().padStart(2,"0")}.${t.getMilliseconds().toString().padStart(3,"0")}] ${s.toUpperCase()} (#${a.id})${n}:`,...i)}),ij=iG(({cause:e,fiber:t,logLevel:a,message:s})=>{let l=t.getRef(ip),i=t.getRef(I.iL),o=t.cache.span;if(void 0===o||"ExternalSpan"===o._tag)return;let r={};for(let[e,t]of Object.entries(i))F.x(r,e,t);r["effect.fiberId"]=t.id,r["effect.logLevel"]=a.toUpperCase(),e.reasons.length>0&&(r["effect.cause"]=ef(e)),o.event((0,C.ZK)(Array.isArray(s)&&1===s.length?s[0]:s),l.currentTimeNanosUnsafe(),r)}),iN=eU(void 0),iW=(0,v.XY)(e=>(0,V.yw)(e[0]),(e,t)=>sT(e,e=>(0,V.R6)(a=>(iJ(a,e,t?.defectsOnly),e0)))),iJ=(e,t,a)=>{let s=e.getRef(I.oQ);if(0===s.size||a&&!j(t))return;let l={cause:t,fiber:e,timestamp:e.getRef(ip).currentTimeNanosUnsafe()};s.forEach(e=>e.report(l))}},5844(e,t,a){let s=new WeakSet;a.d(t,{},{J3:s,Xp:e=>{let t=new Set(Reflect.ownKeys(e));if(e.constructor===Object)return t;e instanceof Error&&t.delete("stack");let a=Object.getPrototypeOf(e),s=a;for(;null!==s&&s!==Object.prototype;){let e=Reflect.ownKeys(s);for(let a=0;a<e.length;a++)t.add(e[a]);s=Object.getPrototypeOf(s)}return t.has("constructor")&&"function"==typeof e.constructor&&a===e.constructor.prototype&&t.delete("constructor"),t},j:e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength)})},7258(e,t,a){a.d(t,{},{F:"effect/Metric/FiberRuntimeMetrics"})},7731(e,t,a){var s=a(3332),l=a(1958),i=a(5033),o=a(3952),r=a(4233),n=a(6481),c=a(2449);let d="~effect/Option",p={[d]:{_A:e=>e},...c.fU,[Symbol.iterator](){return new n.B(this)}},h=Object.defineProperty(Object.assign(Object.create(p),{_tag:"Some",_op:"Some",[s.HR](e){return f(e)&&v(e)&&s.aI(this.value,e.value)},[i.HR](){return i.kg(i.tW(this._tag))(i.tW(this.value))},toString(){return`some(${(0,l.GP)(this.value)})`},toJSON(){return{_id:"Option",_tag:this._tag,value:(0,o.aB)(this.value)}}}),"valueOrUndefined",{get(){return this.value}}),g=i.tW("None"),u=Object.assign(Object.create(p),{_tag:"None",_op:"None",valueOrUndefined:void 0,[s.HR]:e=>f(e)&&m(e),[i.HR]:()=>g,toString:()=>"none()",toJSON(){return{_id:"Option",_tag:this._tag}}}),f=e=>(0,r.i5)(e,d),m=e=>"None"===e._tag,v=e=>"Some"===e._tag,y=Object.create(u),w=function(e){this.value=e};w.prototype=h,a.d(t,{},{$I:m,Ru:v,dv:y,oL:f,zN:e=>new w(e)})},2275(e,t,a){function s(e,t,a){"__proto__"===t?Object.defineProperty(e,t,{value:a,writable:!0,enumerable:!0,configurable:!0}):e[t]=a}function l(e,t){for(let a of Reflect.ownKeys(t))Object.prototype.propertyIsEnumerable.call(t,a)&&s(e,a,t[a])}a.d(t,{x:()=>s,z:()=>l})},6712(e,t,a){var s=a(1179),l=a(1594);let i=s.Or("effect/ErrorReporter/CurrentErrorReporters",{defaultValue:()=>new Set}),o=s.Or("effect/References/CurrentStackFrame",{fiberCached:!0,defaultValue:l.MN}),r=s.Or("effect/References/TracerEnabled",{fiberCached:!0,defaultValue:l.ue}),n=s.Or("effect/References/TracerTimingEnabled",{defaultValue:l.ue}),c=s.Or("effect/References/TracerSpanAnnotations",{defaultValue:()=>({})}),d=s.Or("effect/References/TracerSpanLinks",{defaultValue:()=>[]}),p=s.Or("effect/References/CurrentLogAnnotations",{defaultValue:()=>({})}),h=s.Or("effect/References/CurrentLogLevel",{fiberCached:!0,defaultValue:()=>"Info"}),g=s.Or("effect/References/MinimumLogLevel",{fiberCached:!0,defaultValue:()=>"Info"}),u=s.Or("effect/References/UnhandledLogLevel",{defaultValue:()=>"Error"}),f=s.Or("effect/References/CurrentLogSpans",{defaultValue:()=>[]});a.d(t,{},{Gl:h,aG:u,ce:c,d8:f,iL:p,ls:d,nU:n,oQ:i,rf:r,vA:o,zQ:g})},2563(e,t,a){var s=a(3332),l=a(1958),i=a(1594),o=a(5033),r=a(3952),n=a(4233),c=a(6481),d=a(2449),p=a(7731);let h="~effect/Result",g={[h]:{_A:e=>e,_E:e=>e},...d.fU,[Symbol.iterator](){return new c.B(this)}},u=Object.assign(Object.create(g),{_tag:"Success",_op:"Success",[s.HR](e){return m(e)&&y(e)&&s.aI(this.success,e.success)},[o.HR](){return o.kg(o.tW(this._tag))(o.tW(this.success))},toString(){return`success(${(0,l.GP)(this.success)})`},toJSON(){return{_id:"Result",_tag:this._tag,value:(0,r.aB)(this.success)}}}),f=Object.assign(Object.create(g),{_tag:"Failure",_op:"Failure",[s.HR](e){return m(e)&&v(e)&&s.aI(this.failure,e.failure)},[o.HR](){return o.kg(o.tW(this._tag))(o.tW(this.failure))},toString(){return`failure(${(0,l.GP)(this.failure)})`},toJSON(){return{_id:"Result",_tag:this._tag,failure:(0,r.aB)(this.failure)}}}),m=e=>(0,n.i5)(e,h),v=e=>"Failure"===e._tag,y=e=>"Success"===e._tag,w=function(e){this.failure=e};w.prototype=f;let x=e=>new w(e),b=function(e){this.success=e};b.prototype=u;let k=e=>new b(e),M=(0,i.XY)(2,(e,t)=>p.$I(e)?x(t()):k(e.value));a.d(t,{},{L8:e=>y(e)?p.dv:p.zN(e.failure),N6:v,Oz:e=>v(e)?p.dv:p.zN(e.success),Py:k,aI:m,fJ:x,oJ:y,sV:M})},2840(e,t,a){var s=a(1594);function l(e){return e.checks?e.checks[e.checks.length-1].annotations:e.annotations}function i(e){return t=>l(t)?.[e]}let o="~structural",r="~identifier",n="~sentinels",c=i("identifier"),d=i(r),p=i("title"),h=i("description"),g=(0,s.Bj)(e=>{let t=l(e)?.identifier;return"string"==typeof t?t:e.getExpected(g)}),u=new Set([n,o,"representation","arbitraryConstraint","toJsonSchema","toCode","toEquivalence","toFormatter","toCodec","toCodecJson","toCodecStringTree","toCodecIso","toCodecArbitrary"]);a.d(t,{hd:()=>l,ip:()=>i},{C3:o,CD:d,DQ:p,I_:n,KE:c,L1:["title","description","default","examples","readOnly","writeOnly","format","contentEncoding","contentMediaType","contentSchema"],Pk:h,R4:r,UI:u,bo:g,py:"~constructor"})},8253(e,t,a){var s=a(719),l=a(7086);function i(e){let t;for(let a of e.reasons){if(!s.lC(a)||!l.gh(a.error))return;t??=a.error}return t}function o(e,t){let a=i(e);if(void 0===a)throw Error(t,{cause:e});return a}a.d(t,{R:()=>i,q:()=>o})},587(e,t,a){var s=a(6526),l=a(1587);let i=Symbol(),o=s.Py,r=o(i),n=o(i);a.d(t,{},{LO:i,Py:o,Rr:n,e8:e=>"None"===e._tag?r:o(e.value),r2:r,zL:e=>e===i?l.none():l.some(e)})},5340(e,t,a){let s,l=void 0===(s=Object.getOwnPropertyDescriptor(Error,"stackTraceLimit"))?Object.isExtensible(Error):Object.hasOwn(s,"writable")?!0===s.writable:void 0!==s.set;a.d(t,{},{ft:e=>{l&&(Error.stackTraceLimit=e)},jt:()=>Error.stackTraceLimit})},8689(e,t,a){let s,l,i,o,r;function n(e){let t=e.length;for(;--t>=0;)e[t]=0}let c=573,d=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),p=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),h=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),g=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),u=Array(576);n(u);let f=Array(60);n(f);let m=Array(512);n(m);let v=Array(256);n(v);let y=Array(29);n(y);let w=Array(30);function x(e,t,a,s,l){this.static_tree=e,this.extra_bits=t,this.extra_base=a,this.elems=s,this.max_length=l,this.has_stree=e&&e.length}function b(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}n(w);let k=e=>e<256?m[e]:m[256+(e>>>7)],M=(e,t)=>{e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255},C=(e,t,a)=>{e.bi_valid>16-a?(e.bi_buf|=t<<e.bi_valid&65535,M(e,e.bi_buf),e.bi_buf=t>>16-e.bi_valid,e.bi_valid+=a-16):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=a)},z=(e,t,a)=>{C(e,a[2*t],a[2*t+1])},_=(e,t)=>{let a=0;do a|=1&e,e>>>=1,a<<=1;while(--t>0)return a>>>1},L=(e,t,a)=>{let s,l,i=Array(16),o=0;for(s=1;s<=15;s++)i[s]=o=o+a[s-1]<<1;for(l=0;l<=t;l++){let t=e[2*l+1];0!==t&&(e[2*l]=_(i[t]++,t))}},B=e=>{let t;for(t=0;t<286;t++)e.dyn_ltree[2*t]=0;for(t=0;t<30;t++)e.dyn_dtree[2*t]=0;for(t=0;t<19;t++)e.bl_tree[2*t]=0;e.dyn_ltree[512]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0},A=e=>{e.bi_valid>8?M(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0},S=(e,t,a,s)=>{let l=2*t,i=2*a;return e[l]<e[i]||e[l]===e[i]&&s[t]<=s[a]},P=(e,t,a)=>{let s=e.heap[a],l=a<<1;for(;l<=e.heap_len&&(l<e.heap_len&&S(t,e.heap[l+1],e.heap[l],e.depth)&&l++,!S(t,s,e.heap[l],e.depth));)e.heap[a]=e.heap[l],a=l,l<<=1;e.heap[a]=s},V=(e,t,a)=>{let s,l,i,o,r=0;if(0!==e.last_lit)do s=e.pending_buf[e.d_buf+2*r]<<8|e.pending_buf[e.d_buf+2*r+1],l=e.pending_buf[e.l_buf+r],r++,0===s?z(e,l,t):(z(e,(i=v[l])+256+1,t),0!==(o=d[i])&&C(e,l-=y[i],o),z(e,i=k(--s),a),0!==(o=p[i])&&C(e,s-=w[i],o));while(r<e.last_lit)z(e,256,t)},H=(e,t)=>{let a,s,l,i=t.dyn_tree,o=t.stat_desc.static_tree,r=t.stat_desc.has_stree,n=t.stat_desc.elems,d=-1;for(e.heap_len=0,e.heap_max=c,a=0;a<n;a++)0!==i[2*a]?(e.heap[++e.heap_len]=d=a,e.depth[a]=0):i[2*a+1]=0;for(;e.heap_len<2;)i[2*(l=e.heap[++e.heap_len]=d<2?++d:0)]=1,e.depth[l]=0,e.opt_len--,r&&(e.static_len-=o[2*l+1]);for(t.max_code=d,a=e.heap_len>>1;a>=1;a--)P(e,i,a);l=n;do a=e.heap[1],e.heap[1]=e.heap[e.heap_len--],P(e,i,1),s=e.heap[1],e.heap[--e.heap_max]=a,e.heap[--e.heap_max]=s,i[2*l]=i[2*a]+i[2*s],e.depth[l]=(e.depth[a]>=e.depth[s]?e.depth[a]:e.depth[s])+1,i[2*a+1]=i[2*s+1]=l,e.heap[1]=l++,P(e,i,1);while(e.heap_len>=2)e.heap[--e.heap_max]=e.heap[1],((e,t)=>{let a,s,l,i,o,r,n=t.dyn_tree,d=t.max_code,p=t.stat_desc.static_tree,h=t.stat_desc.has_stree,g=t.stat_desc.extra_bits,u=t.stat_desc.extra_base,f=t.stat_desc.max_length,m=0;for(i=0;i<=15;i++)e.bl_count[i]=0;for(n[2*e.heap[e.heap_max]+1]=0,a=e.heap_max+1;a<c;a++)(i=n[2*n[2*(s=e.heap[a])+1]+1]+1)>f&&(i=f,m++),n[2*s+1]=i,!(s>d)&&(e.bl_count[i]++,o=0,s>=u&&(o=g[s-u]),r=n[2*s],e.opt_len+=r*(i+o),h&&(e.static_len+=r*(p[2*s+1]+o)));if(0!==m){do{for(i=f-1;0===e.bl_count[i];)i--;e.bl_count[i]--,e.bl_count[i+1]+=2,e.bl_count[f]--,m-=2}while(m>0)for(i=f;0!==i;i--)for(s=e.bl_count[i];0!==s;)!((l=e.heap[--a])>d)&&(n[2*l+1]!==i&&(e.opt_len+=(i-n[2*l+1])*n[2*l],n[2*l+1]=i),s--)}})(e,t),L(i,d,e.bl_count)},q=(e,t,a)=>{let s,l,i=-1,o=t[1],r=0,n=7,c=4;for(0===o&&(n=138,c=3),t[(a+1)*2+1]=65535,s=0;s<=a;s++)l=o,o=t[(s+1)*2+1],++r<n&&l===o||(r<c?e.bl_tree[2*l]+=r:0!==l?(l!==i&&e.bl_tree[2*l]++,e.bl_tree[32]++):r<=10?e.bl_tree[34]++:e.bl_tree[36]++,r=0,i=l,0===o?(n=138,c=3):l===o?(n=6,c=3):(n=7,c=4))},F=(e,t,a)=>{let s,l,i=-1,o=t[1],r=0,n=7,c=4;for(0===o&&(n=138,c=3),s=0;s<=a;s++)if(l=o,o=t[(s+1)*2+1],!(++r<n)||l!==o){if(r<c)do z(e,l,e.bl_tree);while(0!=--r)else 0!==l?(l!==i&&(z(e,l,e.bl_tree),r--),z(e,16,e.bl_tree),C(e,r-3,2)):r<=10?(z(e,17,e.bl_tree),C(e,r-3,3)):(z(e,18,e.bl_tree),C(e,r-11,7));r=0,i=l,0===o?(n=138,c=3):l===o?(n=6,c=3):(n=7,c=4)}},I=!1,E=(e,t,a,s)=>{C(e,0+ +!!s,3),A(e),M(e,a),M(e,~a),e.pending_buf.set(e.window.subarray(t,t+a),e.pending),e.pending+=a};var O={_tr_init:e=>{I||((()=>{let e,t,a,o,r,n=Array(16);for(o=0,a=0;o<28;o++)for(y[o]=a,e=0;e<1<<d[o];e++)v[a++]=o;for(v[a-1]=o,r=0,o=0;o<16;o++)for(w[o]=r,e=0;e<1<<p[o];e++)m[r++]=o;for(r>>=7;o<30;o++)for(w[o]=r<<7,e=0;e<1<<p[o]-7;e++)m[256+r++]=o;for(t=0;t<=15;t++)n[t]=0;for(e=0;e<=143;)u[2*e+1]=8,e++,n[8]++;for(;e<=255;)u[2*e+1]=9,e++,n[9]++;for(;e<=279;)u[2*e+1]=7,e++,n[7]++;for(;e<=287;)u[2*e+1]=8,e++,n[8]++;for(L(u,287,n),e=0;e<30;e++)f[2*e+1]=5,f[2*e]=_(e,5);s=new x(u,d,257,286,15),l=new x(f,p,0,30,15),i=new x([],h,0,19,7)})(),I=!0),e.l_desc=new b(e.dyn_ltree,s),e.d_desc=new b(e.dyn_dtree,l),e.bl_desc=new b(e.bl_tree,i),e.bi_buf=0,e.bi_valid=0,B(e)},_tr_stored_block:E,_tr_flush_block:(e,t,a,s)=>{let l,i,o=0;e.level>0?(2===e.strm.data_type&&(e.strm.data_type=(e=>{let t,a=0xf3ffc07f;for(t=0;t<=31;t++,a>>>=1)if(1&a&&0!==e.dyn_ltree[2*t])return 0;if(0!==e.dyn_ltree[18]||0!==e.dyn_ltree[20]||0!==e.dyn_ltree[26])return 1;for(t=32;t<256;t++)if(0!==e.dyn_ltree[2*t])return 1;return 0})(e)),H(e,e.l_desc),H(e,e.d_desc),o=(e=>{let t;for(q(e,e.dyn_ltree,e.l_desc.max_code),q(e,e.dyn_dtree,e.d_desc.max_code),H(e,e.bl_desc),t=18;t>=3&&0===e.bl_tree[2*g[t]+1];t--);return e.opt_len+=3*(t+1)+5+5+4,t})(e),l=e.opt_len+3+7>>>3,(i=e.static_len+3+7>>>3)<=l&&(l=i)):l=i=a+5,a+4<=l&&-1!==t?E(e,t,a,s):4===e.strategy||i===l?(C(e,2+ +!!s,3),V(e,u,f)):(C(e,4+ +!!s,3),((e,t,a,s)=>{let l;for(C(e,t-257,5),C(e,a-1,5),C(e,s-4,4),l=0;l<s;l++)C(e,e.bl_tree[2*g[l]+1],3);F(e,e.dyn_ltree,t-1),F(e,e.dyn_dtree,a-1)})(e,e.l_desc.max_code+1,e.d_desc.max_code+1,o+1),V(e,e.dyn_ltree,e.dyn_dtree)),B(e),s&&A(e)},_tr_tally:(e,t,a)=>(e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&a,e.last_lit++,0===t?e.dyn_ltree[2*a]++:(e.matches++,t--,e.dyn_ltree[(v[a]+256+1)*2]++,e.dyn_dtree[2*k(t)]++),e.last_lit===e.lit_bufsize-1),_tr_align:e=>{C(e,2,3),z(e,256,u),16===e.bi_valid?(M(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):e.bi_valid>=8&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}},U=(e,t,a,s)=>{let l=65535&e,i=e>>>16&65535,o=0;for(;0!==a;){o=a>2e3?2e3:a,a-=o;do i=i+(l=l+t[s++]|0)|0;while(--o)l%=65521,i%=65521}return l|i<<16};let X=new Uint32Array((()=>{let e,t=[];for(var a=0;a<256;a++){e=a;for(var s=0;s<8;s++)e=1&e?0xedb88320^e>>>1:e>>>1;t[a]=e}return t})());var Y=(e,t,a,s)=>{let l=s+a;e^=-1;for(let a=s;a<l;a++)e=e>>>8^X[(e^t[a])&255];return -1^e},T={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},Z={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};let{_tr_init:G,_tr_stored_block:D,_tr_flush_block:R,_tr_tally:$,_tr_align:j}=O,{Z_NO_FLUSH:N,Z_PARTIAL_FLUSH:W,Z_FULL_FLUSH:J,Z_FINISH:K,Z_BLOCK:Q,Z_OK:ee,Z_STREAM_END:et,Z_STREAM_ERROR:ea,Z_DATA_ERROR:es,Z_BUF_ERROR:el,Z_DEFAULT_COMPRESSION:ei,Z_FILTERED:eo,Z_HUFFMAN_ONLY:er,Z_RLE:en,Z_FIXED:ec,Z_DEFAULT_STRATEGY:ed,Z_UNKNOWN:ep,Z_DEFLATED:eh}=Z,eg=573,eu=(e,t)=>(e.msg=T[t],t),ef=e=>(e<<1)-9*(e>4),em=e=>{let t=e.length;for(;--t>=0;)e[t]=0},ev=(e,t,a)=>(t<<e.hash_shift^a)&e.hash_mask,ey=e=>{let t=e.state,a=t.pending;a>e.avail_out&&(a=e.avail_out),0!==a&&(e.output.set(t.pending_buf.subarray(t.pending_out,t.pending_out+a),e.next_out),e.next_out+=a,t.pending_out+=a,e.total_out+=a,e.avail_out-=a,t.pending-=a,0===t.pending&&(t.pending_out=0))},ew=(e,t)=>{R(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,ey(e.strm)},ex=(e,t)=>{e.pending_buf[e.pending++]=t},eb=(e,t)=>{e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t},ek=(e,t,a,s)=>{let l=e.avail_in;return(l>s&&(l=s),0===l)?0:(e.avail_in-=l,t.set(e.input.subarray(e.next_in,e.next_in+l),a),1===e.state.wrap?e.adler=U(e.adler,t,l,a):2===e.state.wrap&&(e.adler=Y(e.adler,t,l,a)),e.next_in+=l,e.total_in+=l,l)},eM=(e,t)=>{let a,s,l=e.max_chain_length,i=e.strstart,o=e.prev_length,r=e.nice_match,n=e.strstart>e.w_size-262?e.strstart-(e.w_size-262):0,c=e.window,d=e.w_mask,p=e.prev,h=e.strstart+258,g=c[i+o-1],u=c[i+o];e.prev_length>=e.good_match&&(l>>=2),r>e.lookahead&&(r=e.lookahead);do{if(c[(a=t)+o]!==u||c[a+o-1]!==g||c[a]!==c[i]||c[++a]!==c[i+1])continue;i+=2,a++;do;while(c[++i]===c[++a]&&c[++i]===c[++a]&&c[++i]===c[++a]&&c[++i]===c[++a]&&c[++i]===c[++a]&&c[++i]===c[++a]&&c[++i]===c[++a]&&c[++i]===c[++a]&&i<h)if(s=258-(h-i),i=h-258,s>o){if(e.match_start=t,o=s,s>=r)break;g=c[i+o-1],u=c[i+o]}}while((t=p[t&d])>n&&0!=--l)return o<=e.lookahead?o:e.lookahead},eC=e=>{let t,a,s,l,i,o=e.w_size;do{if(l=e.window_size-e.lookahead-e.strstart,e.strstart>=o+(o-262)){e.window.set(e.window.subarray(o,o+o),0),e.match_start-=o,e.strstart-=o,e.block_start-=o,t=a=e.hash_size;do s=e.head[--t],e.head[t]=s>=o?s-o:0;while(--a)t=a=o;do s=e.prev[--t],e.prev[t]=s>=o?s-o:0;while(--a)l+=o}if(0===e.strm.avail_in)break;if(a=ek(e.strm,e.window,e.strstart+e.lookahead,l),e.lookahead+=a,e.lookahead+e.insert>=3)for(i=e.strstart-e.insert,e.ins_h=e.window[i],e.ins_h=ev(e,e.ins_h,e.window[i+1]);e.insert&&(e.ins_h=ev(e,e.ins_h,e.window[i+3-1]),e.prev[i&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=i,i++,e.insert--,!(e.lookahead+e.insert<3)););}while(e.lookahead<262&&0!==e.strm.avail_in)},ez=(e,t)=>{let a,s;for(;;){if(e.lookahead<262){if(eC(e),e.lookahead<262&&t===N)return 1;if(0===e.lookahead)break}if(a=0,e.lookahead>=3&&(e.ins_h=ev(e,e.ins_h,e.window[e.strstart+3-1]),a=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),0!==a&&e.strstart-a<=e.w_size-262&&(e.match_length=eM(e,a)),e.match_length>=3)if(s=$(e,e.strstart-e.match_start,e.match_length-3),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=3){e.match_length--;do e.strstart++,e.ins_h=ev(e,e.ins_h,e.window[e.strstart+3-1]),a=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart;while(0!=--e.match_length)e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=ev(e,e.ins_h,e.window[e.strstart+1]);else s=$(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(s&&(ew(e,!1),0===e.strm.avail_out))return 1}return(e.insert=e.strstart<2?e.strstart:2,t===K)?(ew(e,!0),0===e.strm.avail_out)?3:4:e.last_lit&&(ew(e,!1),0===e.strm.avail_out)?1:2},e_=(e,t)=>{let a,s,l;for(;;){if(e.lookahead<262){if(eC(e),e.lookahead<262&&t===N)return 1;if(0===e.lookahead)break}if(a=0,e.lookahead>=3&&(e.ins_h=ev(e,e.ins_h,e.window[e.strstart+3-1]),a=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=2,0!==a&&e.prev_length<e.max_lazy_match&&e.strstart-a<=e.w_size-262&&(e.match_length=eM(e,a),e.match_length<=5&&(e.strategy===eo||3===e.match_length&&e.strstart-e.match_start>4096)&&(e.match_length=2)),e.prev_length>=3&&e.match_length<=e.prev_length){l=e.strstart+e.lookahead-3,s=$(e,e.strstart-1-e.prev_match,e.prev_length-3),e.lookahead-=e.prev_length-1,e.prev_length-=2;do++e.strstart<=l&&(e.ins_h=ev(e,e.ins_h,e.window[e.strstart+3-1]),a=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart);while(0!=--e.prev_length)if(e.match_available=0,e.match_length=2,e.strstart++,s&&(ew(e,!1),0===e.strm.avail_out))return 1}else if(e.match_available){if((s=$(e,0,e.window[e.strstart-1]))&&ew(e,!1),e.strstart++,e.lookahead--,0===e.strm.avail_out)return 1}else e.match_available=1,e.strstart++,e.lookahead--}return(e.match_available&&(s=$(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<2?e.strstart:2,t===K)?(ew(e,!0),0===e.strm.avail_out)?3:4:e.last_lit&&(ew(e,!1),0===e.strm.avail_out)?1:2};function eL(e,t,a,s,l){this.good_length=e,this.max_lazy=t,this.nice_length=a,this.max_chain=s,this.func=l}let eB=[new eL(0,0,0,0,(e,t)=>{let a=65535;for(65535>e.pending_buf_size-5&&(a=e.pending_buf_size-5);;){if(e.lookahead<=1){if(eC(e),0===e.lookahead&&t===N)return 1;if(0===e.lookahead)break}e.strstart+=e.lookahead,e.lookahead=0;let s=e.block_start+a;if((0===e.strstart||e.strstart>=s)&&(e.lookahead=e.strstart-s,e.strstart=s,ew(e,!1),0===e.strm.avail_out)||e.strstart-e.block_start>=e.w_size-262&&(ew(e,!1),0===e.strm.avail_out))return 1}return(e.insert=0,t===K)?(ew(e,!0),0===e.strm.avail_out)?3:4:(e.strstart>e.block_start&&(ew(e,!1),e.strm.avail_out),1)}),new eL(4,4,8,4,ez),new eL(4,5,16,8,ez),new eL(4,6,32,32,ez),new eL(4,4,16,16,e_),new eL(8,16,32,32,e_),new eL(8,16,128,128,e_),new eL(8,32,128,256,e_),new eL(32,128,258,1024,e_),new eL(32,258,258,4096,e_)];function eA(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=eh,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(2*eg),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),em(this.dyn_ltree),em(this.dyn_dtree),em(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),em(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),em(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}var eS=(e,t)=>{let a,s;if(!e||!e.state||t>Q||t<0)return e?eu(e,ea):ea;let l=e.state;if(!e.output||!e.input&&0!==e.avail_in||666===l.status&&t!==K)return eu(e,0===e.avail_out?el:ea);l.strm=e;let i=l.last_flush;if(l.last_flush=t,42===l.status)if(2===l.wrap)e.adler=0,ex(l,31),ex(l,139),ex(l,8),l.gzhead?(ex(l,+!!l.gzhead.text+2*!!l.gzhead.hcrc+4*!!l.gzhead.extra+8*!!l.gzhead.name+16*!!l.gzhead.comment),ex(l,255&l.gzhead.time),ex(l,l.gzhead.time>>8&255),ex(l,l.gzhead.time>>16&255),ex(l,l.gzhead.time>>24&255),ex(l,9===l.level?2:4*(l.strategy>=er||l.level<2)),ex(l,255&l.gzhead.os),l.gzhead.extra&&l.gzhead.extra.length&&(ex(l,255&l.gzhead.extra.length),ex(l,l.gzhead.extra.length>>8&255)),l.gzhead.hcrc&&(e.adler=Y(e.adler,l.pending_buf,l.pending,0)),l.gzindex=0,l.status=69):(ex(l,0),ex(l,0),ex(l,0),ex(l,0),ex(l,0),ex(l,9===l.level?2:4*(l.strategy>=er||l.level<2)),ex(l,3),l.status=113);else{let t=eh+(l.w_bits-8<<4)<<8;t|=(l.strategy>=er||l.level<2?0:l.level<6?1:6===l.level?2:3)<<6,0!==l.strstart&&(t|=32),t+=31-t%31,l.status=113,eb(l,t),0!==l.strstart&&(eb(l,e.adler>>>16),eb(l,65535&e.adler)),e.adler=1}if(69===l.status)if(l.gzhead.extra){for(a=l.pending;l.gzindex<(65535&l.gzhead.extra.length)&&(l.pending!==l.pending_buf_size||(l.gzhead.hcrc&&l.pending>a&&(e.adler=Y(e.adler,l.pending_buf,l.pending-a,a)),ey(e),a=l.pending,l.pending!==l.pending_buf_size));)ex(l,255&l.gzhead.extra[l.gzindex]),l.gzindex++;l.gzhead.hcrc&&l.pending>a&&(e.adler=Y(e.adler,l.pending_buf,l.pending-a,a)),l.gzindex===l.gzhead.extra.length&&(l.gzindex=0,l.status=73)}else l.status=73;if(73===l.status)if(l.gzhead.name){a=l.pending;do{if(l.pending===l.pending_buf_size&&(l.gzhead.hcrc&&l.pending>a&&(e.adler=Y(e.adler,l.pending_buf,l.pending-a,a)),ey(e),a=l.pending,l.pending===l.pending_buf_size)){s=1;break}s=l.gzindex<l.gzhead.name.length?255&l.gzhead.name.charCodeAt(l.gzindex++):0,ex(l,s)}while(0!==s)l.gzhead.hcrc&&l.pending>a&&(e.adler=Y(e.adler,l.pending_buf,l.pending-a,a)),0===s&&(l.gzindex=0,l.status=91)}else l.status=91;if(91===l.status)if(l.gzhead.comment){a=l.pending;do{if(l.pending===l.pending_buf_size&&(l.gzhead.hcrc&&l.pending>a&&(e.adler=Y(e.adler,l.pending_buf,l.pending-a,a)),ey(e),a=l.pending,l.pending===l.pending_buf_size)){s=1;break}s=l.gzindex<l.gzhead.comment.length?255&l.gzhead.comment.charCodeAt(l.gzindex++):0,ex(l,s)}while(0!==s)l.gzhead.hcrc&&l.pending>a&&(e.adler=Y(e.adler,l.pending_buf,l.pending-a,a)),0===s&&(l.status=103)}else l.status=103;if(103===l.status&&(l.gzhead.hcrc?(l.pending+2>l.pending_buf_size&&ey(e),l.pending+2<=l.pending_buf_size&&(ex(l,255&e.adler),ex(l,e.adler>>8&255),e.adler=0,l.status=113)):l.status=113),0!==l.pending){if(ey(e),0===e.avail_out)return l.last_flush=-1,ee}else if(0===e.avail_in&&ef(t)<=ef(i)&&t!==K)return eu(e,el);if(666===l.status&&0!==e.avail_in)return eu(e,el);if(0!==e.avail_in||0!==l.lookahead||t!==N&&666!==l.status){let a=l.strategy===er?((e,t)=>{let a;for(;;){if(0===e.lookahead&&(eC(e),0===e.lookahead)){if(t===N)return 1;break}if(e.match_length=0,a=$(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,a&&(ew(e,!1),0===e.strm.avail_out))return 1}return(e.insert=0,t===K)?(ew(e,!0),0===e.strm.avail_out)?3:4:e.last_lit&&(ew(e,!1),0===e.strm.avail_out)?1:2})(l,t):l.strategy===en?((e,t)=>{let a,s,l,i,o=e.window;for(;;){if(e.lookahead<=258){if(eC(e),e.lookahead<=258&&t===N)return 1;if(0===e.lookahead)break}if(e.match_length=0,e.lookahead>=3&&e.strstart>0&&(s=o[l=e.strstart-1])===o[++l]&&s===o[++l]&&s===o[++l]){i=e.strstart+258;do;while(s===o[++l]&&s===o[++l]&&s===o[++l]&&s===o[++l]&&s===o[++l]&&s===o[++l]&&s===o[++l]&&s===o[++l]&&l<i)e.match_length=258-(i-l),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=3?(a=$(e,1,e.match_length-3),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(a=$(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),a&&(ew(e,!1),0===e.strm.avail_out))return 1}return(e.insert=0,t===K)?(ew(e,!0),0===e.strm.avail_out)?3:4:e.last_lit&&(ew(e,!1),0===e.strm.avail_out)?1:2})(l,t):eB[l.level].func(l,t);if((3===a||4===a)&&(l.status=666),1===a||3===a)return 0===e.avail_out&&(l.last_flush=-1),ee;if(2===a&&(t===W?j(l):t!==Q&&(D(l,0,0,!1),t===J&&(em(l.head),0===l.lookahead&&(l.strstart=0,l.block_start=0,l.insert=0))),ey(e),0===e.avail_out))return l.last_flush=-1,ee}return t!==K?ee:l.wrap<=0?et:(2===l.wrap?(ex(l,255&e.adler),ex(l,e.adler>>8&255),ex(l,e.adler>>16&255),ex(l,e.adler>>24&255),ex(l,255&e.total_in),ex(l,e.total_in>>8&255),ex(l,e.total_in>>16&255),ex(l,e.total_in>>24&255)):(eb(l,e.adler>>>16),eb(l,65535&e.adler)),ey(e),l.wrap>0&&(l.wrap=-l.wrap),0!==l.pending?ee:et)},eP=e=>{if(!e||!e.state)return ea;let t=e.state.status;return 42!==t&&69!==t&&73!==t&&91!==t&&103!==t&&113!==t&&666!==t?eu(e,ea):(e.state=null,113===t?eu(e,es):ee)};let eV=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var eH=function(e){let t=Array.prototype.slice.call(arguments,1);for(;t.length;){let a=t.shift();if(a){if("object"!=typeof a)throw TypeError(a+"must be non-object");for(let t in a)eV(a,t)&&(e[t]=a[t])}}return e},eq=e=>{let t=0;for(let a=0,s=e.length;a<s;a++)t+=e[a].length;let a=new Uint8Array(t);for(let t=0,s=0,l=e.length;t<l;t++){let l=e[t];a.set(l,s),s+=l.length}return a};let eF=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(e){eF=!1}let eI=new Uint8Array(256);for(let e=0;e<256;e++)eI[e]=e>=252?6:e>=248?5:e>=240?4:e>=224?3:e>=192?2:1;eI[254]=eI[254]=1;var eE=e=>{let t,a,s,l,i,o=e.length,r=0;for(l=0;l<o;l++)(64512&(a=e.charCodeAt(l)))==55296&&l+1<o&&(64512&(s=e.charCodeAt(l+1)))==56320&&(a=65536+(a-55296<<10)+(s-56320),l++),r+=a<128?1:a<2048?2:a<65536?3:4;for(t=new Uint8Array(r),i=0,l=0;i<r;l++)(64512&(a=e.charCodeAt(l)))==55296&&l+1<o&&(64512&(s=e.charCodeAt(l+1)))==56320&&(a=65536+(a-55296<<10)+(s-56320),l++),a<128?t[i++]=a:(a<2048?t[i++]=192|a>>>6:(a<65536?t[i++]=224|a>>>12:(t[i++]=240|a>>>18,t[i++]=128|a>>>12&63),t[i++]=128|a>>>6&63),t[i++]=128|63&a);return t},eO=(e,t)=>{let a,s,l=t||e.length,i=Array(2*l);for(s=0,a=0;a<l;){let t=e[a++];if(t<128){i[s++]=t;continue}let o=eI[t];if(o>4){i[s++]=65533,a+=o-1;continue}for(t&=2===o?31:3===o?15:7;o>1&&a<l;)t=t<<6|63&e[a++],o--;if(o>1){i[s++]=65533;continue}t<65536?i[s++]=t:(t-=65536,i[s++]=55296|t>>10&1023,i[s++]=56320|1023&t)}var o=s;if(o<65534&&i.subarray&&eF)return String.fromCharCode.apply(null,i.length===o?i:i.subarray(0,o));let r="";for(let e=0;e<o;e++)r+=String.fromCharCode(i[e]);return r},eU=(e,t)=>{(t=t||e.length)>e.length&&(t=e.length);let a=t-1;for(;a>=0&&(192&e[a])==128;)a--;return a<0||0===a?t:a+eI[e[a]]>t?a:t},eX=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};let eY=Object.prototype.toString,{Z_NO_FLUSH:eT,Z_SYNC_FLUSH:eZ,Z_FULL_FLUSH:eG,Z_FINISH:eD,Z_OK:eR,Z_STREAM_END:e$,Z_DEFAULT_COMPRESSION:ej,Z_DEFAULT_STRATEGY:eN,Z_DEFLATED:eW}=Z;function eJ(e){let t,a;this.options=eH({level:ej,method:eW,chunkSize:16384,windowBits:15,memLevel:8,strategy:eN},e||{});let s=this.options;s.raw&&s.windowBits>0?s.windowBits=-s.windowBits:s.gzip&&s.windowBits>0&&s.windowBits<16&&(s.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new eX,this.strm.avail_out=0;let l=((e,t,a,s,l,i)=>{var o,r;let n;if(!e)return ea;let c=1;if(t===ei&&(t=6),s<0?(c=0,s=-s):s>15&&(c=2,s-=16),l<1||l>9||a!==eh||s<8||s>15||t<0||t>9||i<0||i>ec)return eu(e,ea);8===s&&(s=9);let d=new eA;return e.state=d,d.strm=e,d.wrap=c,d.gzhead=null,d.w_bits=s,d.w_size=1<<d.w_bits,d.w_mask=d.w_size-1,d.hash_bits=l+7,d.hash_size=1<<d.hash_bits,d.hash_mask=d.hash_size-1,d.hash_shift=~~((d.hash_bits+3-1)/3),d.window=new Uint8Array(2*d.w_size),d.head=new Uint16Array(d.hash_size),d.prev=new Uint16Array(d.w_size),d.lit_bufsize=1<<l+6,d.pending_buf_size=4*d.lit_bufsize,d.pending_buf=new Uint8Array(d.pending_buf_size),d.d_buf=+d.lit_bufsize,d.l_buf=3*d.lit_bufsize,d.level=t,d.strategy=i,d.method=a,(n=(e=>{if(!e||!e.state)return eu(e,ea);e.total_in=e.total_out=0,e.data_type=ep;let t=e.state;return t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?42:113,e.adler=+(2!==t.wrap),t.last_flush=N,G(t),ee})(o=e))===ee&&((r=o.state).window_size=2*r.w_size,em(r.head),r.max_lazy_match=eB[r.level].max_lazy,r.good_match=eB[r.level].good_length,r.nice_match=eB[r.level].nice_length,r.max_chain_length=eB[r.level].max_chain,r.strstart=0,r.block_start=0,r.lookahead=0,r.insert=0,r.match_length=r.prev_length=2,r.match_available=0,r.ins_h=0),n})(this.strm,s.level,s.method,s.windowBits,s.memLevel,s.strategy);if(l!==eR)throw Error(T[l]);if(s.header&&(t=this.strm,a=s.header,t&&t.state&&2===t.state.wrap&&(t.state.gzhead=a)),s.dictionary){let e;if(e="string"==typeof s.dictionary?eE(s.dictionary):"[object ArrayBuffer]"===eY.call(s.dictionary)?new Uint8Array(s.dictionary):s.dictionary,(l=((e,t)=>{let a=t.length;if(!e||!e.state)return ea;let s=e.state,l=s.wrap;if(2===l||1===l&&42!==s.status||s.lookahead)return ea;if(1===l&&(e.adler=U(e.adler,t,a,0)),s.wrap=0,a>=s.w_size){0===l&&(em(s.head),s.strstart=0,s.block_start=0,s.insert=0);let e=new Uint8Array(s.w_size);e.set(t.subarray(a-s.w_size,a),0),t=e,a=s.w_size}let i=e.avail_in,o=e.next_in,r=e.input;for(e.avail_in=a,e.next_in=0,e.input=t,eC(s);s.lookahead>=3;){let e=s.strstart,t=s.lookahead-2;do s.ins_h=ev(s,s.ins_h,s.window[e+3-1]),s.prev[e&s.w_mask]=s.head[s.ins_h],s.head[s.ins_h]=e,e++;while(--t)s.strstart=e,s.lookahead=2,eC(s)}return s.strstart+=s.lookahead,s.block_start=s.strstart,s.insert=s.lookahead,s.lookahead=0,s.match_length=s.prev_length=2,s.match_available=0,e.next_in=o,e.input=r,e.avail_in=i,s.wrap=l,ee})(this.strm,e))!==eR)throw Error(T[l]);this._dict_set=!0}}function eK(e,t){let a=new eJ(t);if(a.push(e,!0),a.err)throw a.msg||T[a.err];return a.result}eJ.prototype.push=function(e,t){let a,s,l=this.strm,i=this.options.chunkSize;if(this.ended)return!1;for(s=t===~~t?t:!0===t?eD:eT,"string"==typeof e?l.input=eE(e):"[object ArrayBuffer]"===eY.call(e)?l.input=new Uint8Array(e):l.input=e,l.next_in=0,l.avail_in=l.input.length;;){if(0===l.avail_out&&(l.output=new Uint8Array(i),l.next_out=0,l.avail_out=i),(s===eZ||s===eG)&&l.avail_out<=6){this.onData(l.output.subarray(0,l.next_out)),l.avail_out=0;continue}if((a=eS(l,s))===e$)return l.next_out>0&&this.onData(l.output.subarray(0,l.next_out)),a=eP(this.strm),this.onEnd(a),this.ended=!0,a===eR;if(0===l.avail_out){this.onData(l.output);continue}if(s>0&&l.next_out>0){this.onData(l.output.subarray(0,l.next_out)),l.avail_out=0;continue}if(0===l.avail_in)break}return!0},eJ.prototype.onData=function(e){this.chunks.push(e)},eJ.prototype.onEnd=function(e){e===eR&&(this.result=eq(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};var eQ=function(e,t){let a,s,l,i,o,r,n,c,d,p,h,g,u,f,m,v,y,w,x,b,k,M,C,z,_=e.state;a=e.next_in,C=e.input,s=a+(e.avail_in-5),l=e.next_out,z=e.output,i=l-(t-e.avail_out),o=l+(e.avail_out-257),r=_.dmax,n=_.wsize,c=_.whave,d=_.wnext,p=_.window,h=_.hold,g=_.bits,u=_.lencode,f=_.distcode,m=(1<<_.lenbits)-1,v=(1<<_.distbits)-1;t:do for(g<15&&(h+=C[a++]<<g,g+=8,h+=C[a++]<<g,g+=8),y=u[h&m];;){if(h>>>=w=y>>>24,g-=w,0==(w=y>>>16&255))z[l++]=65535&y;else if(16&w)for(x=65535&y,(w&=15)&&(g<w&&(h+=C[a++]<<g,g+=8),x+=h&(1<<w)-1,h>>>=w,g-=w),g<15&&(h+=C[a++]<<g,g+=8,h+=C[a++]<<g,g+=8),y=f[h&v];;){if(h>>>=w=y>>>24,g-=w,16&(w=y>>>16&255)){if(b=65535&y,g<(w&=15)&&(h+=C[a++]<<g,(g+=8)<w&&(h+=C[a++]<<g,g+=8)),(b+=h&(1<<w)-1)>r){e.msg="invalid distance too far back",_.mode=30;break t}if(h>>>=w,g-=w,b>(w=l-i)){if((w=b-w)>c&&_.sane){e.msg="invalid distance too far back",_.mode=30;break t}if(k=0,M=p,0===d){if(k+=n-w,w<x){x-=w;do z[l++]=p[k++];while(--w)k=l-b,M=z}}else if(d<w){if(k+=n+d-w,(w-=d)<x){x-=w;do z[l++]=p[k++];while(--w)if(k=0,d<x){x-=w=d;do z[l++]=p[k++];while(--w)k=l-b,M=z}}}else if(k+=d-w,w<x){x-=w;do z[l++]=p[k++];while(--w)k=l-b,M=z}for(;x>2;)z[l++]=M[k++],z[l++]=M[k++],z[l++]=M[k++],x-=3;x&&(z[l++]=M[k++],x>1&&(z[l++]=M[k++]))}else{k=l-b;do z[l++]=z[k++],z[l++]=z[k++],z[l++]=z[k++],x-=3;while(x>2)x&&(z[l++]=z[k++],x>1&&(z[l++]=z[k++]))}}else if((64&w)==0){y=f[(65535&y)+(h&(1<<w)-1)];continue}else{e.msg="invalid distance code",_.mode=30;break t}break}else if((64&w)==0){y=u[(65535&y)+(h&(1<<w)-1)];continue}else if(32&w){_.mode=12;break t}else{e.msg="invalid literal/length code",_.mode=30;break t}break}while(a<s&&l<o)a-=x=g>>3,g-=x<<3,h&=(1<<g)-1,e.next_in=a,e.next_out=l,e.avail_in=a<s?5+(s-a):5-(a-s),e.avail_out=l<o?257+(o-l):257-(l-o),_.hold=h,_.bits=g};let e1=new Uint16Array([3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0]),e0=new Uint8Array([16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78]),e2=new Uint16Array([1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0]),e3=new Uint8Array([16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]);var e5=(e,t,a,s,l,i,o,r)=>{let n,c,d,p,h,g,u,f,m,v=r.bits,y=0,w=0,x=0,b=0,k=0,M=0,C=0,z=0,_=0,L=0,B=null,A=0,S=new Uint16Array(16),P=new Uint16Array(16),V=null,H=0;for(y=0;y<=15;y++)S[y]=0;for(w=0;w<s;w++)S[t[a+w]]++;for(k=v,b=15;b>=1&&0===S[b];b--);if(k>b&&(k=b),0===b)return l[i++]=0x1400000,l[i++]=0x1400000,r.bits=1,0;for(x=1;x<b&&0===S[x];x++);for(k<x&&(k=x),z=1,y=1;y<=15;y++)if(z<<=1,(z-=S[y])<0)return -1;if(z>0&&(0===e||1!==b))return -1;for(P[1]=0,y=1;y<15;y++)P[y+1]=P[y]+S[y];for(w=0;w<s;w++)0!==t[a+w]&&(o[P[t[a+w]]++]=w);if(0===e?(B=V=o,g=19):1===e?(B=e1,A-=257,V=e0,H-=257,g=256):(B=e2,V=e3,g=-1),L=0,w=0,y=x,h=i,M=k,C=0,d=-1,p=(_=1<<k)-1,1===e&&_>852||2===e&&_>592)return 1;for(;;){u=y-C,o[w]<g?(f=0,m=o[w]):o[w]>g?(f=V[H+o[w]],m=B[A+o[w]]):(f=96,m=0),n=1<<y-C,x=c=1<<M;do l[h+(L>>C)+(c-=n)]=u<<24|f<<16|m;while(0!==c)for(n=1<<y-1;L&n;)n>>=1;if(0!==n?(L&=n-1,L+=n):L=0,w++,0==--S[y]){if(y===b)break;y=t[a+o[w]]}if(y>k&&(L&p)!==d){for(0===C&&(C=k),h+=x,z=1<<(M=y-C);M+C<b&&!((z-=S[M+C])<=0);)M++,z<<=1;if(_+=1<<M,1===e&&_>852||2===e&&_>592)return 1;l[d=L&p]=k<<24|M<<16|h-i}}return 0!==L&&(l[h+L]=y-C<<24|4194304),r.bits=k,0};let{Z_FINISH:e4,Z_BLOCK:e6,Z_TREES:e7,Z_OK:e8,Z_STREAM_END:e9,Z_NEED_DICT:te,Z_STREAM_ERROR:tt,Z_DATA_ERROR:ta,Z_MEM_ERROR:ts,Z_BUF_ERROR:tl,Z_DEFLATED:ti}=Z,to=e=>(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24);function tr(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}let tn=e=>{if(!e||!e.state)return tt;let t=e.state;return t.wsize=0,t.whave=0,t.wnext=0,(e=>{if(!e||!e.state)return tt;let t=e.state;return e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=1,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Int32Array(852),t.distcode=t.distdyn=new Int32Array(592),t.sane=1,t.back=-1,e8})(e)},tc=!0,td=e=>{if(tc){o=new Int32Array(512),r=new Int32Array(32);let t=0;for(;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(e5(1,e.lens,0,288,o,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;e5(2,e.lens,0,32,r,0,e.work,{bits:5}),tc=!1}e.lencode=o,e.lenbits=9,e.distcode=r,e.distbits=5},tp=(e,t,a,s)=>{let l,i=e.state;return null===i.window&&(i.wsize=1<<i.wbits,i.wnext=0,i.whave=0,i.window=new Uint8Array(i.wsize)),s>=i.wsize?(i.window.set(t.subarray(a-i.wsize,a),0),i.wnext=0,i.whave=i.wsize):((l=i.wsize-i.wnext)>s&&(l=s),i.window.set(t.subarray(a-s,a-s+l),i.wnext),(s-=l)?(i.window.set(t.subarray(a-s,a),0),i.wnext=s,i.whave=i.wsize):(i.wnext+=l,i.wnext===i.wsize&&(i.wnext=0),i.whave<i.wsize&&(i.whave+=l))),0};var th=(e,t)=>{let a,s,l,i,o,r,n,c,d,p,h,g,u,f,m,v,y,w,x,b,k,M,C,z,_=0,L=new Uint8Array(4),B=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(!e||!e.state||!e.output||!e.input&&0!==e.avail_in)return tt;12===(a=e.state).mode&&(a.mode=13),o=e.next_out,l=e.output,n=e.avail_out,i=e.next_in,s=e.input,r=e.avail_in,c=a.hold,d=a.bits,p=r,h=n,M=e8;a:for(;;)switch(a.mode){case 1:if(0===a.wrap){a.mode=13;break}for(;d<16;){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}if(2&a.wrap&&35615===c){a.check=0,L[0]=255&c,L[1]=c>>>8&255,a.check=Y(a.check,L,2,0),c=0,d=0,a.mode=2;break}if(a.flags=0,a.head&&(a.head.done=!1),!(1&a.wrap)||(((255&c)<<8)+(c>>8))%31){e.msg="incorrect header check",a.mode=30;break}if((15&c)!==ti){e.msg="unknown compression method",a.mode=30;break}if(c>>>=4,d-=4,k=(15&c)+8,0===a.wbits)a.wbits=k;else if(k>a.wbits){e.msg="invalid window size",a.mode=30;break}a.dmax=1<<a.wbits,e.adler=a.check=1,a.mode=512&c?10:12,c=0,d=0;break;case 2:for(;d<16;){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}if(a.flags=c,(255&a.flags)!==ti){e.msg="unknown compression method",a.mode=30;break}if(57344&a.flags){e.msg="unknown header flags set",a.mode=30;break}a.head&&(a.head.text=c>>8&1),512&a.flags&&(L[0]=255&c,L[1]=c>>>8&255,a.check=Y(a.check,L,2,0)),c=0,d=0,a.mode=3;case 3:for(;d<32;){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}a.head&&(a.head.time=c),512&a.flags&&(L[0]=255&c,L[1]=c>>>8&255,L[2]=c>>>16&255,L[3]=c>>>24&255,a.check=Y(a.check,L,4,0)),c=0,d=0,a.mode=4;case 4:for(;d<16;){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}a.head&&(a.head.xflags=255&c,a.head.os=c>>8),512&a.flags&&(L[0]=255&c,L[1]=c>>>8&255,a.check=Y(a.check,L,2,0)),c=0,d=0,a.mode=5;case 5:if(1024&a.flags){for(;d<16;){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}a.length=c,a.head&&(a.head.extra_len=c),512&a.flags&&(L[0]=255&c,L[1]=c>>>8&255,a.check=Y(a.check,L,2,0)),c=0,d=0}else a.head&&(a.head.extra=null);a.mode=6;case 6:if(1024&a.flags&&((g=a.length)>r&&(g=r),g&&(a.head&&(k=a.head.extra_len-a.length,a.head.extra||(a.head.extra=new Uint8Array(a.head.extra_len)),a.head.extra.set(s.subarray(i,i+g),k)),512&a.flags&&(a.check=Y(a.check,s,g,i)),r-=g,i+=g,a.length-=g),a.length))break a;a.length=0,a.mode=7;case 7:if(2048&a.flags){if(0===r)break a;g=0;do k=s[i+g++],a.head&&k&&a.length<65536&&(a.head.name+=String.fromCharCode(k));while(k&&g<r)if(512&a.flags&&(a.check=Y(a.check,s,g,i)),r-=g,i+=g,k)break a}else a.head&&(a.head.name=null);a.length=0,a.mode=8;case 8:if(4096&a.flags){if(0===r)break a;g=0;do k=s[i+g++],a.head&&k&&a.length<65536&&(a.head.comment+=String.fromCharCode(k));while(k&&g<r)if(512&a.flags&&(a.check=Y(a.check,s,g,i)),r-=g,i+=g,k)break a}else a.head&&(a.head.comment=null);a.mode=9;case 9:if(512&a.flags){for(;d<16;){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}if(c!==(65535&a.check)){e.msg="header crc mismatch",a.mode=30;break}c=0,d=0}a.head&&(a.head.hcrc=a.flags>>9&1,a.head.done=!0),e.adler=a.check=0,a.mode=12;break;case 10:for(;d<32;){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}e.adler=a.check=to(c),c=0,d=0,a.mode=11;case 11:if(0===a.havedict)return e.next_out=o,e.avail_out=n,e.next_in=i,e.avail_in=r,a.hold=c,a.bits=d,te;e.adler=a.check=1,a.mode=12;case 12:if(t===e6||t===e7)break a;case 13:if(a.last){c>>>=7&d,d-=7&d,a.mode=27;break}for(;d<3;){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}switch(a.last=1&c,d-=1,3&(c>>>=1)){case 0:a.mode=14;break;case 1:if(td(a),a.mode=20,t===e7){c>>>=2,d-=2;break a}break;case 2:a.mode=17;break;case 3:e.msg="invalid block type",a.mode=30}c>>>=2,d-=2;break;case 14:for(c>>>=7&d,d-=7&d;d<32;){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}if((65535&c)!=(c>>>16^65535)){e.msg="invalid stored block lengths",a.mode=30;break}if(a.length=65535&c,c=0,d=0,a.mode=15,t===e7)break a;case 15:a.mode=16;case 16:if(g=a.length){if(g>r&&(g=r),g>n&&(g=n),0===g)break a;l.set(s.subarray(i,i+g),o),r-=g,i+=g,n-=g,o+=g,a.length-=g;break}a.mode=12;break;case 17:for(;d<14;){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}if(a.nlen=(31&c)+257,d-=5,a.ndist=(31&(c>>>=5))+1,d-=5,a.ncode=(15&(c>>>=5))+4,c>>>=4,d-=4,a.nlen>286||a.ndist>30){e.msg="too many length or distance symbols",a.mode=30;break}a.have=0,a.mode=18;case 18:for(;a.have<a.ncode;){for(;d<3;){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}a.lens[B[a.have++]]=7&c,c>>>=3,d-=3}for(;a.have<19;)a.lens[B[a.have++]]=0;if(a.lencode=a.lendyn,a.lenbits=7,C={bits:a.lenbits},M=e5(0,a.lens,0,19,a.lencode,0,a.work,C),a.lenbits=C.bits,M){e.msg="invalid code lengths set",a.mode=30;break}a.have=0,a.mode=19;case 19:for(;a.have<a.nlen+a.ndist;){for(;m=(_=a.lencode[c&(1<<a.lenbits)-1])>>>24,v=_>>>16&255,y=65535&_,!(m<=d);){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}if(y<16)c>>>=m,d-=m,a.lens[a.have++]=y;else{if(16===y){for(z=m+2;d<z;){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}if(c>>>=m,d-=m,0===a.have){e.msg="invalid bit length repeat",a.mode=30;break}k=a.lens[a.have-1],g=3+(3&c),c>>>=2,d-=2}else if(17===y){for(z=m+3;d<z;){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}c>>>=m,d-=m,k=0,g=3+(7&c),c>>>=3,d-=3}else{for(z=m+7;d<z;){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}c>>>=m,d-=m,k=0,g=11+(127&c),c>>>=7,d-=7}if(a.have+g>a.nlen+a.ndist){e.msg="invalid bit length repeat",a.mode=30;break}for(;g--;)a.lens[a.have++]=k}}if(30===a.mode)break;if(0===a.lens[256]){e.msg="invalid code -- missing end-of-block",a.mode=30;break}if(a.lenbits=9,C={bits:a.lenbits},M=e5(1,a.lens,0,a.nlen,a.lencode,0,a.work,C),a.lenbits=C.bits,M){e.msg="invalid literal/lengths set",a.mode=30;break}if(a.distbits=6,a.distcode=a.distdyn,C={bits:a.distbits},M=e5(2,a.lens,a.nlen,a.ndist,a.distcode,0,a.work,C),a.distbits=C.bits,M){e.msg="invalid distances set",a.mode=30;break}if(a.mode=20,t===e7)break a;case 20:a.mode=21;case 21:if(r>=6&&n>=258){e.next_out=o,e.avail_out=n,e.next_in=i,e.avail_in=r,a.hold=c,a.bits=d,eQ(e,h),o=e.next_out,l=e.output,n=e.avail_out,i=e.next_in,s=e.input,r=e.avail_in,c=a.hold,d=a.bits,12===a.mode&&(a.back=-1);break}for(a.back=0;m=(_=a.lencode[c&(1<<a.lenbits)-1])>>>24,v=_>>>16&255,y=65535&_,!(m<=d);){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}if(v&&(240&v)==0){for(w=m,x=v,b=y;m=(_=a.lencode[b+((c&(1<<w+x)-1)>>w)])>>>24,v=_>>>16&255,y=65535&_,!(w+m<=d);){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}c>>>=w,d-=w,a.back+=w}if(c>>>=m,d-=m,a.back+=m,a.length=y,0===v){a.mode=26;break}if(32&v){a.back=-1,a.mode=12;break}if(64&v){e.msg="invalid literal/length code",a.mode=30;break}a.extra=15&v,a.mode=22;case 22:if(a.extra){for(z=a.extra;d<z;){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}a.length+=c&(1<<a.extra)-1,c>>>=a.extra,d-=a.extra,a.back+=a.extra}a.was=a.length,a.mode=23;case 23:for(;m=(_=a.distcode[c&(1<<a.distbits)-1])>>>24,v=_>>>16&255,y=65535&_,!(m<=d);){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}if((240&v)==0){for(w=m,x=v,b=y;m=(_=a.distcode[b+((c&(1<<w+x)-1)>>w)])>>>24,v=_>>>16&255,y=65535&_,!(w+m<=d);){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}c>>>=w,d-=w,a.back+=w}if(c>>>=m,d-=m,a.back+=m,64&v){e.msg="invalid distance code",a.mode=30;break}a.offset=y,a.extra=15&v,a.mode=24;case 24:if(a.extra){for(z=a.extra;d<z;){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}a.offset+=c&(1<<a.extra)-1,c>>>=a.extra,d-=a.extra,a.back+=a.extra}if(a.offset>a.dmax){e.msg="invalid distance too far back",a.mode=30;break}a.mode=25;case 25:if(0===n)break a;if(g=h-n,a.offset>g){if((g=a.offset-g)>a.whave&&a.sane){e.msg="invalid distance too far back",a.mode=30;break}g>a.wnext?(g-=a.wnext,u=a.wsize-g):u=a.wnext-g,g>a.length&&(g=a.length),f=a.window}else f=l,u=o-a.offset,g=a.length;g>n&&(g=n),n-=g,a.length-=g;do l[o++]=f[u++];while(--g)0===a.length&&(a.mode=21);break;case 26:if(0===n)break a;l[o++]=a.length,n--,a.mode=21;break;case 27:if(a.wrap){for(;d<32;){if(0===r)break a;r--,c|=s[i++]<<d,d+=8}if(h-=n,e.total_out+=h,a.total+=h,h&&(e.adler=a.check=a.flags?Y(a.check,l,h,o-h):U(a.check,l,h,o-h)),h=n,(a.flags?c:to(c))!==a.check){e.msg="incorrect data check",a.mode=30;break}c=0,d=0}a.mode=28;case 28:if(a.wrap&&a.flags){for(;d<32;){if(0===r)break a;r--,c+=s[i++]<<d,d+=8}if(c!==(0|a.total)){e.msg="incorrect length check",a.mode=30;break}c=0,d=0}a.mode=29;case 29:M=e9;break a;case 30:M=ta;break a;case 31:return ts;default:return tt}return e.next_out=o,e.avail_out=n,e.next_in=i,e.avail_in=r,a.hold=c,a.bits=d,(a.wsize||h!==e.avail_out&&a.mode<30&&(a.mode<27||t!==e4))&&tp(e,e.output,e.next_out,h-e.avail_out),p-=e.avail_in,h-=e.avail_out,e.total_in+=p,e.total_out+=h,a.total+=h,a.wrap&&h&&(e.adler=a.check=a.flags?Y(a.check,l,h,e.next_out-h):U(a.check,l,h,e.next_out-h)),e.data_type=a.bits+64*!!a.last+128*(12===a.mode)+256*(20===a.mode||15===a.mode),(0===p&&0===h||t===e4)&&M===e8&&(M=tl),M},tg=e=>{if(!e||!e.state)return tt;let t=e.state;return t.window&&(t.window=null),e.state=null,e8},tu=(e,t)=>{let a,s=t.length;return e&&e.state&&(0===(a=e.state).wrap||11===a.mode)?11===a.mode&&U(1,t,s,0)!==a.check?ta:tp(e,t,s,s)?(a.mode=31,ts):(a.havedict=1,e8):tt},tf=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};let tm=Object.prototype.toString,{Z_NO_FLUSH:tv,Z_FINISH:ty,Z_OK:tw,Z_STREAM_END:tx,Z_NEED_DICT:tb,Z_STREAM_ERROR:tk,Z_DATA_ERROR:tM,Z_MEM_ERROR:tC}=Z;function tz(e){this.options=eH({chunkSize:65536,windowBits:15,to:""},e||{});let t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),t.windowBits>=0&&t.windowBits<16&&!(e&&e.windowBits)&&(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&(15&t.windowBits)==0&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new eX,this.strm.avail_out=0;let a=((e,t)=>{if(!e)return tt;let a=new tr;e.state=a,a.window=null;let s=((e,t)=>{let a;if(!e||!e.state)return tt;let s=e.state;return(t<0?(a=0,t=-t):(a=(t>>4)+1,t<48&&(t&=15)),t&&(t<8||t>15))?tt:(null!==s.window&&s.wbits!==t&&(s.window=null),s.wrap=a,s.wbits=t,tn(e))})(e,t);return s!==e8&&(e.state=null),s})(this.strm,t.windowBits);if(a!==tw||(this.header=new tf,((e,t)=>{if(!e||!e.state)return;let a=e.state;return(2&a.wrap)==0||(a.head=t,t.done=!1)})(this.strm,this.header),t.dictionary&&("string"==typeof t.dictionary?t.dictionary=eE(t.dictionary):"[object ArrayBuffer]"===tm.call(t.dictionary)&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw)&&(a=tu(this.strm,t.dictionary))!==tw))throw Error(T[a])}function t_(e,t){let a=new tz(t);if(a.push(e),a.err)throw a.msg||T[a.err];return a.result}tz.prototype.push=function(e,t){let a,s,l,i=this.strm,o=this.options.chunkSize,r=this.options.dictionary;if(this.ended)return!1;for(s=t===~~t?t:!0===t?ty:tv,"[object ArrayBuffer]"===tm.call(e)?i.input=new Uint8Array(e):i.input=e,i.next_in=0,i.avail_in=i.input.length;;){for(0===i.avail_out&&(i.output=new Uint8Array(o),i.next_out=0,i.avail_out=o),(a=th(i,s))===tb&&r&&((a=tu(i,r))===tw?a=th(i,s):a===tM&&(a=tb));i.avail_in>0&&a===tx&&i.state.wrap>0&&0!==e[i.next_in];)tn(i),a=th(i,s);switch(a){case tk:case tM:case tb:case tC:return this.onEnd(a),this.ended=!0,!1}if(l=i.avail_out,i.next_out&&(0===i.avail_out||a===tx))if("string"===this.options.to){let e=eU(i.output,i.next_out),t=i.next_out-e,a=eO(i.output,e);i.next_out=t,i.avail_out=o-t,t&&i.output.set(i.output.subarray(e,e+t),0),this.onData(a)}else this.onData(i.output.length===i.next_out?i.output:i.output.subarray(0,i.next_out));if(a!==tw||0!==l){if(a===tx)return a=tg(this.strm),this.onEnd(a),this.ended=!0,!0;if(0===i.avail_in)break}}return!0},tz.prototype.onData=function(e){this.chunks.push(e)},tz.prototype.onEnd=function(e){e===tw&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=eq(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};let{Deflate:tL,deflate:tB,deflateRaw:tA,gzip:tS}={Deflate:eJ,deflate:eK,deflateRaw:function(e,t){return(t=t||{}).raw=!0,eK(e,t)},gzip:function(e,t){return(t=t||{}).gzip=!0,eK(e,t)},constants:Z},{Inflate:tP,inflate:tV,inflateRaw:tH,ungzip:tq}={Inflate:tz,inflate:t_,inflateRaw:function(e,t){return(t=t||{}).raw=!0,t_(e,t)},ungzip:t_,constants:Z};a.d(t,{Gy:()=>tL,Kc:()=>tB,UD:()=>tV})},959(e,t,a){let s;a.d(t,{x3j:()=>lz,aoY:()=>dW,$BZ:()=>dN,y15:()=>s4,OvW:()=>ia,Txp:()=>ir,Q5o:()=>cl,UA7:()=>cC,JHX:()=>l2,yEg:()=>lt,UhG:()=>s6,OFB:()=>dj,Yep:()=>dK,z4o:()=>ae,Ahp:()=>dJ,txp:()=>co,rRT:()=>cz});var l=a(2718),i=a(1179),o=a(2842),r=a(4238),n=a(5633),c=a(2109),d=a(7086),p=a(2981);let h=["flowchart","mindmap","sequence","timeline","chart","state-machine"],g=/^[a-z0-9]+(?:-[a-z0-9]+)*$/u;function u(e){return e.length<=64&&g.test(e)}let f=l.ukk,m=l.mSG(l.QfV,l.$r1),v=Object.freeze({paper:"#f6f1e7",card:"#fffdf8",ink:"#1a1712",accent:"#8f707f"}),y=Object.freeze({accentColor:v.accent,backgroundColor:v.card});function w(e,t){return e.pipe(l.tiU(o.PyW(t)))}l.xCb(h);let x=l.xCb(["flowchart","mindmap"]),b=l.xCb(["TB","BT","LR","RL"]),k=l.xCb(["straight","orthogonal","curved"]);class M extends l.Xsx("DiagramIconRef")({slug:f.check(l.Pto(g),l.NYj(64))}){}class C extends l.Xsx("DiagramGroup")({id:f,label:f}){}class z extends l.Xsx("DiagramNode")({id:f,label:f,group:l.lqM(f),kind:l.lqM(f),icon:l.lqM(M),metadata:w(m,{})}){}class _ extends l.Xsx("DiagramEdge")({id:f,source:f,target:f,label:l.lqM(f),metadata:w(m,{})}){}let L=l.QfV.check(l.Pto(/^#[0-9a-fA-F]{6}$/));class B extends l.Xsx("DiagramStyle")({accentColor:w(L,y.accentColor),backgroundColor:w(L,y.backgroundColor)}){}class A extends l.Xsx("DiagramLayout")({direction:w(b,"LR"),edgeRouting:w(k,"orthogonal")}){}class S extends l.Xsx("IntermediateDiagram")({id:f,title:f,type:w(x,"flowchart"),nodes:l.O31(z).pipe(l.fXn).check(l.tJb(1)),edges:w(l.O31(_).pipe(l.fXn),[]),groups:l.lqM(l.O31(C).pipe(l.fXn)),layout:w(A,{direction:"LR",edgeRouting:"orthogonal"}),style:w(B,y),metadata:w(m,{})}){}class P extends Error{constructor(e){super(e),this.name="DiagramValidationError"}}let V=e=>{let t=new Set;for(let a of e){if(t.has(a))return a;t.add(a)}};function H(e){let t=V(e.nodes.map(e=>e.id));if(t)throw new P(`Duplicate node id "${t}" is not allowed.`);let a=V(e.edges.map(e=>e.id));if(a)throw new P(`Duplicate edge id "${a}" is not allowed.`);let s=V((e.groups??[]).map(e=>e.id));if(s)throw new P(`Duplicate group id "${s}" is not allowed.`);let l=new Set((e.groups??[]).map(e=>e.id));for(let t of e.nodes)if(void 0!==t.group&&!l.has(t.group))throw new P(`Node "${t.id}" references missing group "${t.group}".`);let i=new Set(e.nodes.map(e=>e.id));for(let t of e.edges){if(!i.has(t.source))throw new P(`Edge "${t.id}" references missing source node "${t.source}".`);if(!i.has(t.target))throw new P(`Edge "${t.id}" references missing target node "${t.target}".`);if(t.source===t.target)throw new P(`Edge "${t.id}" cannot connect node "${t.source}" to itself.`)}return e}let q="chart",F=["bar","line","pie"],I=["vertical","horizontal"],E=l.xCb(F),O=l.xCb(I);class U extends l.Xsx("ChartSeries")({name:l.Qrq(l.ukk),values:l.O31(l.wYs).pipe(l.fXn)}){}class X extends l.Xsx("ChartDiagram")({id:l.ukk,title:l.ukk,type:l.uSQ(q),kind:E,categories:l.O31(l.ukk).pipe(l.fXn,l.Sr8(l.tJb(1))),series:l.O31(U).pipe(l.fXn,l.Sr8(l.tJb(1))),unit:l.Qrq(l.ukk),categoryAxisTitle:l.Qrq(l.ukk),valueAxisTitle:l.Qrq(l.ukk),stacked:l.Qrq(l.v8c),donut:l.Qrq(l.v8c),orientation:l.Qrq(O),style:B.pipe(l.tiU(o.PyW({...y})))}){}let Y=e=>e.trim().toLowerCase();function T(e){let t=[],{categories:a,kind:s,series:l}=e,i="pie"===s,o=i?8:40;a.length>o&&t.push({code:"chart_too_large",path:"categories",message:`A ${s} chart supports at most ${o} ${i?"slices":"categories"}.`,hint:i?'Fold the smallest slices into one "Other" slice, or use a bar chart.':"Group categories, or split the data into several charts."}),l.length>6&&t.push({code:"chart_too_large",path:"series",message:"A chart supports at most 6 series.",hint:"Keep the series the request compares, or split them into several charts."}),a.length*l.length>120&&t.push({code:"chart_too_large",path:"series",message:"A chart supports at most 120 values (categories × series).",hint:"Split the data into several charts."});let r=new Set;a.forEach((e,a)=>{r.has(Y(e))&&t.push({code:"duplicate_chart_category",path:`categories.[${a}]`,message:`Category "${e}" is listed more than once.`,hint:"List each category once; put its values for every series at the same position."}),r.add(Y(e))}),i&&1!==l.length&&t.push({code:"invalid_chart_series",path:"series",message:"A pie chart has exactly one series.",hint:"Use one series of slice values, or a grouped bar chart to compare several series."});let n=new Set;l.forEach((e,s)=>{let o=`series.[${s}]`;l.length>1&&void 0===e.name&&t.push({code:"invalid_chart_series",path:`${o}.name`,message:`Series ${s+1} needs a name for the legend.`,hint:"Name every series when a chart has more than one."}),void 0!==e.name&&(n.has(Y(e.name))&&t.push({code:"invalid_chart_series",path:`${o}.name`,message:`Series name "${e.name}" is used more than once.`,hint:"Give each series a distinct name."}),n.add(Y(e.name))),e.values.length!==a.length&&t.push({code:"chart_series_mismatch",path:`${o}.values`,message:`Series ${e.name?`"${e.name}"`:s+1} has ${e.values.length} values for ${a.length} categories.`,hint:"Give every series exactly one value per category, in category order."}),i&&e.values.some(e=>e<0)&&t.push({code:"invalid_chart_value",path:`${o}.values`,message:"Pie slice values cannot be negative.",hint:"Use a bar chart for data with negative values."})}),i&&l[0]&&!l[0].values.some(e=>e>0)&&t.push({code:"invalid_chart_value",path:"series.[0].values",message:"A pie chart needs at least one positive slice value.",hint:"Supply the slice values from the request."});let c=(e,a,s,l)=>{a||t.push({code:"invalid_chart_option",path:e,message:s,hint:l})};for(let t of(e.stacked&&c("stacked","bar"===s,"Only bar charts stack.",'Remove stacked, or use kind: "bar".'),e.donut&&c("donut",i,"Only pie charts draw as a donut.",'Remove donut, or use kind: "pie".'),void 0!==e.orientation&&c("orientation","bar"===s,"Only bar charts have an orientation.","Remove orientation for line and pie charts."),["categoryAxisTitle","valueAxisTitle"]))void 0!==e[t]&&c(t,!i,"A pie chart has no axes.",`Remove ${t} from the pie chart.`);return t.slice(0,20)}class Z extends P{issues;constructor(e){super(e[0]?.message??"Chart failed validation."),this.issues=e,this.name="ChartValidationError"}}function G(e){let t=T(e);if(t.length)throw new Z(t);return e}G(l.svK(X,{errors:"all"})({id:"quarterly-revenue-chart",title:"Quarterly revenue",type:"chart",kind:"bar",categories:["Q1","Q2","Q3","Q4"],series:[{name:"2025",values:[42,51,47,63]},{name:"2026",values:[48,57,61,72]}],unit:"$M",categoryAxisTitle:"Quarter",valueAxisTitle:"Revenue"}));let D="timeline",R=["event","milestone"],$=l.xCb(R);class j extends l.Xsx("TimelineEvent")({id:l.ukk,label:l.ukk,date:l.Qrq(l.ukk),end:l.Qrq(l.ukk),order:l.Qrq(l.wYs),kind:l.Qrq($),lane:l.Qrq(l.ukk),description:l.Qrq(l.ukk)}){}class N extends l.Xsx("TimelineDiagram")({id:l.ukk,title:l.ukk,type:l.uSQ(D),events:l.O31(j).pipe(l.fXn,l.Sr8(l.tJb(1))),lanes:l.Qrq(l.O31(l.ukk).pipe(l.fXn)),today:l.Qrq(l.ukk),style:B.pipe(l.tiU(o.PyW({...y})))}){}let W=/^(\d{4})(?:-(\d{2})(?:-(\d{2})(?:T(\d{2}):(\d{2})(?::(\d{2})(?:\.(\d{1,3}))?)?(Z|[+-]\d{2}:\d{2}))?)?)?$/u;function J(e,t,a,s=0,l=0,i=0,o=0){let r=new Date(0);return r.setUTCFullYear(e,t-1,a),r.setUTCHours(s,l,i,o),r.getTime()}function K(e){let t=W.exec(e);if(!t)return;let[,a,s,l,i,o,r,n,c]=t,d=Number(a),p=void 0===s?1:Number(s),h=void 0===l?1:Number(l);if(p<1||p>12||h<1||h>new Date(J(d,p+1,0)).getUTCDate())return;if(void 0===i){let e=void 0!==l?"day":void 0!==s?"month":"year",t=J(d,p,h),a="day"===e?J(d,p,h+1):"month"===e?J(d,p+1,1):J(d+1,1,1);return{granularity:e,start:t,end:a,fields:{year:d,month:p,day:h,hour:0,minute:0,second:0,millisecond:0}}}let g=Number(i),u=Number(o),f=void 0===r?0:Number(r),m=void 0===n?0:Number(n.padEnd(3,"0"));if(g>23||u>59||f>59||void 0===c)return;let v=0;if("Z"!==c){let e=Number(c.slice(1,3)),t=Number(c.slice(4,6));if(e>14||t>59)return;v=(c.startsWith("-")?-1:1)*(60*e+t)}let y=J(d,p,h,g,u,f,m)-6e4*v;return{granularity:"instant",start:y,end:y,fields:{year:d,month:p,day:h,hour:g,minute:u,second:f,millisecond:m},offsetMinutes:v}}let Q="Use YYYY, YYYY-MM, YYYY-MM-DD, or YYYY-MM-DDTHH:mm[:ss] with Z or ±HH:MM, copied from the source.";function ee(e){if(e.lanes)return[...e.lanes];let t=[];for(let a of ei(e))void 0===a.lane||t.includes(a.lane)||t.push(a.lane);return t}function et(e){let t=[];(0===e.events.length||e.events.length>60)&&t.push({code:"timeline_too_large",path:"events",message:"Timeline needs 1–60 events.",hint:"Provide at least one event, or split a longer chronology into timelines."});let a=new Set,s=e.events[0]?.date!==void 0,l=void 0!==e.lanes||e.events.some(e=>e.lane);return e.events.forEach((i,o)=>{let r=`events.[${o}]`;a.has(i.id)&&t.push({code:"duplicate_event_id",path:`${r}.id`,message:`Event id "${i.id}" is duplicated.`,hint:"Give each event a unique stable id."}),a.add(i.id);let n=void 0===i.date?void 0:K(i.date);if(void 0===i.date||n||t.push({code:"invalid_timeline_date",path:`${r}.date`,message:`Event "${i.id}" has invalid date "${i.date}".`,hint:Q}),(void 0!==i.date==(void 0!==i.order)||void 0!==i.date!==s)&&t.push({code:"invalid_timeline_order",path:r,message:"Every event must use exactly one chronology field, with the same date or order mode throughout.",hint:"Supply dates for all events, or numeric order for all events; never invent a missing date."}),void 0!==i.end){let e=K(i.end);e?(void 0===i.date||"milestone"===i.kind||n&&e.end<=n.start)&&t.push({code:"invalid_timeline_span",path:`${r}.end`,message:`Span "${i.id}" needs a date, an end on or after it, and no milestone kind.`,hint:"Use end only for dated phases; a milestone is a single point."}):t.push({code:"invalid_timeline_date",path:`${r}.end`,message:`Event "${i.id}" has invalid end "${i.end}".`,hint:Q})}l&&(void 0===i.lane||e.lanes&&!e.lanes.includes(i.lane))&&t.push({code:"invalid_timeline_lane",path:`${r}.lane`,message:`Event "${i.id}" needs one of the timeline's lanes.`,hint:"Give every event a lane listed in lanes, or omit lanes everywhere."})}),e.lanes&&new Set(e.lanes).size!==e.lanes.length&&t.push({code:"invalid_timeline_lane",path:"lanes",message:"Lane names must be unique.",hint:"List each lane once, in top-to-bottom order."}),ee(e).length>6&&t.push({code:"timeline_too_large",path:"lanes",message:"Timeline supports at most 6 lanes.",hint:"Merge related tracks or split the chronology into timelines."}),void 0===e.today||s&&void 0!==K(e.today)||t.push({code:"invalid_timeline_date",path:"today",message:`Today "${e.today}" must be a valid date on a dated timeline.`,hint:`${Q} Omit today unless the source states it.`}),t.slice(0,20)}class ea extends P{issues;constructor(e){super(e[0]?.message??"Timeline failed validation."),this.issues=e,this.name="TimelineValidationError"}}function es(e){let t=et(e);if(t.length)throw new ea(t);return e}function el(e){return void 0!==e.date?K(e.date)?.start??0/0:e.order??0}function ei(e){return e.events.toSorted((e,t)=>el(e)-el(t)||0)}es(l.svK(N,{errors:"all"})({id:"release-timeline",title:"Release milestones",type:"timeline",events:[{id:"plan",label:"Scope agreed",date:"2026-09-01"},{id:"beta",label:"Public beta",date:"2026-09-15",description:"Collect feedback from early users."},{id:"release",label:"General availability",date:"2026-10-01",kind:"milestone"}]}));let eo="flowchart",er=l.xCb(["duplicate_node_id","duplicate_edge_id","missing_edge_source","missing_edge_target","self_loop","missing_start","multiple_starts","missing_end","start_has_incoming","end_has_outgoing","unreachable_node","missing_outgoing_edge","underbranched_decision","unlabeled_decision_branch","duplicate_decision_branch_label","nonterminating_node","flowchart_too_large","duplicate_group_id","unknown_node_group","empty_group"]);class en extends l.Xsx("FlowchartValidationIssueRef")({kind:l.xCb(["diagram","node","edge","group"]),id:l.lqM(l.ukk),path:l.lqM(l.ukk)}){}l.Xsx("FlowchartValidationIssue")({code:er,ref:l.lqM(en),message:l.ukk,hint:l.ukk});let ec=l.xCb(["start","process","decision","end"]);class ed extends z.extend("FlowchartNode")({kind:ec,description:l.lqM(l.ukk)}){}class ep extends _.extend("FlowchartEdge")({label:l.lqM(l.ukk)}){}class eh extends S.extend("FlowchartDiagram")({type:l.uSQ(eo),nodes:l.O31(ed).pipe(l.fXn).check(l.tJb(2)),edges:l.O31(ep).pipe(l.fXn).check(l.tJb(1))}){}function eg(e){let t=new Set,a=new Set;for(let s of e)t.has(s)?a.add(s):t.add(s);return[...a]}function eu(e,t,a){let s=new Set,l=[...e];for(let e=0;e<l.length;e+=1){let i=l[e];if(!(void 0===i||s.has(i)))for(let e of(s.add(i),t.get(i)??[]))l.push(a(e))}return s}function ef(e){let t=[],a=new Set(e.nodes.map(e=>e.id)),{incoming:s,outgoing:l}=function(e){let t=new Map,a=new Map;for(let s of e)t.set(s.target,[...t.get(s.target)??[],s]),a.set(s.source,[...a.get(s.source)??[],s]);return{incoming:t,outgoing:a}}(e.edges);e.nodes.length>24&&t.push({code:"flowchart_too_large",ref:{kind:"diagram",id:e.id,path:"nodes"},message:`Flowchart has ${e.nodes.length} nodes; the supported maximum is 24.`,hint:"Split the workflow or combine lower-signal steps."}),e.edges.length>64&&t.push({code:"flowchart_too_large",ref:{kind:"diagram",id:e.id,path:"edges"},message:`Flowchart has ${e.edges.length} edges; the supported maximum is 64.`,hint:"Split the workflow or remove lower-signal connections."});let i=e.groups??[];for(let a of(i.length>8&&t.push({code:"flowchart_too_large",ref:{kind:"diagram",id:e.id,path:"groups"},message:`Flowchart has ${i.length} groups; the supported maximum is 8.`,hint:"Merge related groups or leave minor steps ungrouped."}),eg(i.map(e=>e.id))))t.push({code:"duplicate_group_id",ref:{kind:"group",id:a,path:"groups"},message:`Group id "${a}" is used more than once.`,hint:"Give every group a stable unique id."});let o=new Set(i.map(e=>e.id));for(let a of e.nodes)void 0===a.group||o.has(a.group)||t.push({code:"unknown_node_group",ref:{kind:"node",id:a.id,path:"nodes.group"},message:`Node "${a.id}" references undeclared group "${a.group}".`,hint:o.size>0?`Set group to a declared group id (${[...o].map(e=>`"${e}"`).join(", ")}) or declare "${a.group}" in groups.`:`Declare "${a.group}" in groups as { id, label }, or remove the node's group.`});let r=new Set(e.nodes.map(e=>e.group));for(let e of i.filter(e=>!r.has(e.id)))t.push({code:"empty_group",ref:{kind:"group",id:e.id,path:"groups"},message:`Group "${e.id}" has no nodes.`,hint:"Set group on the nodes it holds, or remove the group."});for(let a of eg(e.nodes.map(e=>e.id)))t.push({code:"duplicate_node_id",ref:{kind:"node",id:a,path:"nodes"},message:`Node id "${a}" is used more than once.`,hint:"Give every node a stable unique id."});for(let a of eg(e.edges.map(e=>e.id)))t.push({code:"duplicate_edge_id",ref:{kind:"edge",id:a,path:"edges"},message:`Edge id "${a}" is used more than once.`,hint:"Give every edge a stable unique id."});for(let s of e.edges)a.has(s.source)||t.push({code:"missing_edge_source",ref:{kind:"edge",id:s.id,path:"edges.source"},message:`Edge "${s.id}" references missing source node "${s.source}".`,hint:"Set edge.source to one of the diagram node ids."}),a.has(s.target)||t.push({code:"missing_edge_target",ref:{kind:"edge",id:s.id,path:"edges.target"},message:`Edge "${s.id}" references missing target node "${s.target}".`,hint:"Set edge.target to one of the diagram node ids."}),s.source===s.target&&t.push({code:"self_loop",ref:{kind:"edge",id:s.id},message:`Edge "${s.id}" connects node "${s.source}" to itself.`,hint:"Connect the edge to a different target node."});let n=e.nodes.filter(e=>"start"===e.kind),c=e.nodes.filter(e=>"end"===e.kind);for(let a of(0===n.length?t.push({code:"missing_start",ref:{kind:"diagram",id:e.id,path:"nodes"},message:"Flowchart must contain exactly one start node.",hint:'Mark the first node in the flow with kind: "start".'}):n.length>1&&t.push({code:"multiple_starts",ref:{kind:"diagram",id:e.id,path:"nodes"},message:`Flowchart has ${n.length} start nodes.`,hint:"Keep one start node and change the others to process, decision, or end."}),0===c.length&&t.push({code:"missing_end",ref:{kind:"diagram",id:e.id,path:"nodes"},message:"Flowchart must contain at least one end node.",hint:'Add an end node or mark terminal outcomes with kind: "end".'}),e.nodes)){let e=s.get(a.id)??[],i=l.get(a.id)??[];"start"===a.kind&&e.length>0&&t.push({code:"start_has_incoming",ref:{kind:"node",id:a.id},message:`Start node "${a.id}" cannot have incoming edges.`,hint:"Route the start node only to later nodes."}),"end"===a.kind&&i.length>0&&t.push({code:"end_has_outgoing",ref:{kind:"node",id:a.id},message:`End node "${a.id}" cannot have outgoing edges.`,hint:"End nodes must be terminal outcomes."}),"end"!==a.kind&&0===i.length&&t.push({code:"missing_outgoing_edge",ref:{kind:"node",id:a.id},message:`Node "${a.id}" must have at least one outgoing edge.`,hint:'Connect it to the next step, or mark it as kind: "end".'}),"decision"===a.kind&&t.push(...function(e,t){let a=[];t.length<2&&a.push({code:"underbranched_decision",ref:{kind:"node",id:e.id},message:`Decision node "${e.id}" must have at least two outgoing branches.`,hint:"Add at least two outgoing edges for the decision outcomes."});let s=t.map(e=>e.label?.trim()??"");for(let s of t.filter(e=>!e.label?.trim()))a.push({code:"unlabeled_decision_branch",ref:{kind:"edge",id:s.id,path:"edges.label"},message:`Decision node "${e.id}" has an outgoing branch without a label.`,hint:'Add a short branch label such as "yes", "no", "approved", or "rejected".'});for(let t of eg(s.filter(e=>e.length>0).map(e=>e.toLowerCase())))a.push({code:"duplicate_decision_branch_label",ref:{kind:"node",id:e.id},message:`Decision node "${e.id}" repeats branch label "${t}".`,hint:"Make every outgoing branch label from the same decision unique."});return a}(a,i))}let d=1===n.length?n[0]:void 0;if(d){let a=eu([d.id],l,e=>e.target);for(let s of e.nodes)a.has(s.id)||t.push({code:"unreachable_node",ref:{kind:"node",id:s.id},message:`Node "${s.id}" is not reachable from the start node.`,hint:"Connect every node to the flow that begins at the single start node."});if(c.length>0){let i=eu(c.map(e=>e.id),s,e=>e.source);for(let s of e.nodes)a.has(s.id)&&!i.has(s.id)&&(l.get(s.id)?.length??0)>0&&t.push({code:"nonterminating_node",ref:{kind:"node",id:s.id},message:`Node "${s.id}" cannot reach an end node.`,hint:"Add an eventual exit from this path to an end node; retry loops are valid when they retain an exit."})}}return t.slice(0,20)}class em extends P{issues;constructor(e){super(e[0]?.message??"Flowchart failed semantic validation."),this.issues=e,this.name="FlowchartValidationError"}}function ev(e){let t=ef(e);if(t.length>0)throw new em(t);return e}function ey(e){return ev(l.svK(eh,{errors:"all"})(e))}ey({id:"onboarding-flow",title:"Sketchi onboarding decision flow",type:eo,nodes:[{id:"prompt",label:"Prompt received",kind:"start"},{id:"requirements",label:"Extract requirements",kind:"process"},{id:"clear",label:"Scope clear?",kind:"decision"},{id:"draft",label:"Draft typed IR",kind:"process"},{id:"review",label:"Review diagram",kind:"end"}],edges:[{id:"prompt-requirements",source:"prompt",target:"requirements"},{id:"requirements-clear",source:"requirements",target:"clear"},{id:"clear-draft",source:"clear",target:"draft",label:"yes"},{id:"clear-review",source:"clear",target:"review",label:"no"},{id:"draft-review",source:"draft",target:"review"}],layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"pharma-batch-disposition",title:"Pharma batch disposition flow",type:eo,nodes:[{id:"batch-received",label:"Batch received",kind:"start"},{id:"qa-review",label:"QA reviews Certificate of Analysis",kind:"process"},{id:"passes-specs",label:"Passes specs?",kind:"decision"},{id:"final-review",label:"QA Manager final review",kind:"process"},{id:"packaging",label:"Send to packaging",kind:"end"},{id:"investigate",label:"Investigate retesting",kind:"process"},{id:"reject",label:"Reject batch",kind:"end"}],edges:[{id:"batch-qa",source:"batch-received",target:"qa-review"},{id:"qa-specs",source:"qa-review",target:"passes-specs"},{id:"specs-pass",source:"passes-specs",target:"final-review",label:"yes"},{id:"specs-investigate",source:"passes-specs",target:"investigate",label:"retest"},{id:"specs-reject",source:"passes-specs",target:"reject",label:"reject"},{id:"review-packaging",source:"final-review",target:"packaging"},{id:"investigate-review",source:"investigate",target:"final-review"}],layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"deploy-pipeline-logos",title:"Deploy pipeline",type:eo,nodes:[{id:"push",label:"Push to GitHub",kind:"start",icon:{slug:"github"}},{id:"build",label:"Build the Docker image",kind:"process",icon:{slug:"docker"}},{id:"tests",label:"Tests pass?",kind:"decision",icon:{slug:"vitest"}},{id:"fix",label:"Fix the failing tests",kind:"process"},{id:"ship",label:"Ship to Cloudflare Workers",kind:"end",icon:{slug:"cloudflare"}}],edges:[{id:"push-build",source:"push",target:"build"},{id:"build-tests",source:"build",target:"tests"},{id:"tests-ship",source:"tests",target:"ship",label:"yes"},{id:"tests-fix",source:"tests",target:"fix",label:"no"},{id:"fix-build",source:"fix",target:"build"}],layout:{direction:"TB",edgeRouting:"orthogonal"}});let ew="mindmap";class ex extends l.Xsx("MindmapNodeMetadata")({depth:l.Aiz.check(l.OWK(0)),siblingIndex:l.Aiz.check(l.OWK(0))}){}class eb extends z.extend("MindmapNode")({kind:l.xCb(["root","topic"]),metadata:ex}){}class ek extends l.Xsx("MindmapEdgeMetadata")({depth:l.Aiz.check(l.yJO(0)),siblingIndex:l.Aiz.check(l.OWK(0))}){}class eM extends _.extend("MindmapEdge")({metadata:ek}){}class eC extends S.extend("MindmapDiagram")({type:l.uSQ(ew),nodes:l.O31(eb).pipe(l.fXn).check(l.tJb(2)),edges:l.O31(eM).pipe(l.fXn).check(l.tJb(1))}){}function ez(e){return function(e){H(e);let t=e.nodes.filter(e=>"root"===e.kind);if(1!==t.length)throw new P(`Mindmap must contain exactly one root topic; found ${t.length}.`);let a=t[0];if(!a||0!==a.metadata.depth)throw new P("Mindmap root topic must have depth 0.");let s=new Map,l=new Map(e.nodes.map(e=>[e.id,e])),i=new Map;for(let t of e.edges){s.set(t.target,(s.get(t.target)??0)+1);let e=l.get(t.source)?.metadata.depth,a=l.get(t.target),o=a?.metadata.depth;if(void 0===e||o!==e+1)throw new P(`Mindmap edge "${t.id}" must connect a topic to its immediate child.`);if(!a||t.metadata.depth!==a.metadata.depth||t.metadata.siblingIndex!==a.metadata.siblingIndex)throw new P(`Mindmap edge "${t.id}" metadata must match its child topic.`);i.set(t.source,[...i.get(t.source)??[],a.metadata.siblingIndex])}for(let t of e.nodes){let e=s.get(t.id)??0;if(t.id===a.id?0!==e:1!==e)throw new P(`Mindmap topic "${t.id}" must have ${t.id===a.id?"no parent":"exactly one parent"}.`)}for(let[e,t]of i){let a=t.map((e,t)=>t);if([...t].sort((e,t)=>e-t).some((e,t)=>e!==a[t]))throw new P(`Mindmap children of "${e}" must use contiguous sibling ordering from 0.`)}return e}(l.svK(eC,{errors:"all"})(e))}ez({id:"public-mindmap-capability",title:"Public mindmap generation",type:ew,nodes:[{id:"topic-0",label:"Public mindmaps",kind:"root",metadata:{depth:0,siblingIndex:0}},{id:"topic-0-0",label:"Semantic input",kind:"topic",metadata:{depth:1,siblingIndex:0}},{id:"topic-0-0-0",label:"Nested topics",kind:"topic",metadata:{depth:2,siblingIndex:0}},{id:"topic-0-0-1",label:"Stable ordering",kind:"topic",metadata:{depth:2,siblingIndex:1}},{id:"topic-0-1",label:"Artifact output",kind:"topic",metadata:{depth:1,siblingIndex:1}},{id:"topic-0-1-0",label:"Scene",kind:"topic",metadata:{depth:2,siblingIndex:0}},{id:"topic-0-1-1",label:"Excalidraw",kind:"topic",metadata:{depth:2,siblingIndex:1}}],edges:[{id:"branch-0-0",source:"topic-0",target:"topic-0-0",metadata:{depth:1,siblingIndex:0}},{id:"branch-0-0-0",source:"topic-0-0",target:"topic-0-0-0",metadata:{depth:2,siblingIndex:0}},{id:"branch-0-0-1",source:"topic-0-0",target:"topic-0-0-1",metadata:{depth:2,siblingIndex:1}},{id:"branch-0-1",source:"topic-0",target:"topic-0-1",metadata:{depth:1,siblingIndex:1}},{id:"branch-0-1-0",source:"topic-0-1",target:"topic-0-1-0",metadata:{depth:2,siblingIndex:0}},{id:"branch-0-1-1",source:"topic-0-1",target:"topic-0-1-1",metadata:{depth:2,siblingIndex:1}}],layout:{direction:"LR",edgeRouting:"curved"}});let e_="sequence",eL=["message","return"],eB=["solid","dashed"],eA=":lifeline";function eS(e){return`${e}${eA}`}let eP=l.xCb(eL),eV=l.xCb(eB);class eH extends l.Xsx("SequenceParticipant")({id:l.ukk,label:l.ukk,kind:l.Qrq(l.ukk),icon:l.Qrq(M)}){}class eq extends l.Xsx("SequenceMessage")({id:l.ukk,source:l.ukk,target:l.ukk,label:l.ukk,type:l.Qrq(eP),style:l.Qrq(eV)}){}class eF extends l.Xsx("SequenceDiagram")({id:l.ukk,title:l.ukk,type:l.uSQ(e_),participants:l.O31(eH).pipe(l.fXn,l.Sr8(l.tJb(1))),messages:l.O31(eq).pipe(l.fXn,l.tiU(o.PyW([]))),style:B.pipe(l.tiU(o.PyW({...y})))}){}let eI=l.xCb(["sequence_too_large","duplicate_participant_id","lifeline_id_collision","duplicate_message_id","missing_message_source","missing_message_target","self_message"]);function eE(e){let t=[];e.participants.length>12&&t.push({code:"sequence_too_large",path:"participants",message:`Sequence diagram has ${e.participants.length} participants; the supported maximum is 12.`,hint:"Combine minor actors or split the interaction into several diagrams."}),e.messages.length>40&&t.push({code:"sequence_too_large",path:"messages",message:`Sequence diagram has ${e.messages.length} messages; the supported maximum is 40.`,hint:"Split the interaction into phases or drop lower-signal messages."});let a=new Map;for(let s of(e.participants.forEach((e,s)=>{a.has(e.id)?t.push({code:"duplicate_participant_id",path:`participants.[${s}].id`,message:`Participant id "${e.id}" is duplicated.`,hint:"Give every participant a unique stable id and update message references."}):a.set(e.id,s)}),e.participants)){let a=eS(s.id);e.participants.forEach((e,l)=>{(e.id===a||e.id.startsWith(`${a}:`))&&t.push({code:"lifeline_id_collision",path:`participants.[${l}].id`,message:`Participant id "${e.id}" collides with the generated lifeline for "${s.id}".`,hint:`Rename the participant so its id does not start with another participant id followed by ${eA}.`})})}let s=new Set;return e.messages.forEach((e,l)=>{s.has(e.id)&&t.push({code:"duplicate_message_id",path:`messages.[${l}].id`,message:`Message id "${e.id}" is duplicated.`,hint:"Give every message a unique id or omit message ids to generate them deterministically."}),s.add(e.id),a.has(e.source)||t.push({code:"missing_message_source",path:`messages.[${l}].source`,message:`Message source "${e.source}" is not a participant.`,hint:"Use the id of a participant declared in participants."}),a.has(e.target)||t.push({code:"missing_message_target",path:`messages.[${l}].target`,message:`Message target "${e.target}" is not a participant.`,hint:"Use the id of a participant declared in participants."}),e.source===e.target&&t.push({code:"self_message",path:`messages.[${l}]`,message:`Message "${e.id}" is self-referential.`,hint:"Choose a different target participant; self messages are not supported."})}),t.slice(0,20)}l.Xsx("SequenceValidationIssue")({code:eI,path:l.ukk,message:l.ukk,hint:l.ukk});class eO extends P{issues;constructor(e){super(e[0]?.message??"Sequence diagram failed semantic validation."),this.issues=e,this.name="SequenceValidationError"}}function eU(e){let t=eE(e);if(t.length>0)throw new eO(t);return e}function eX(e){return eU(l.svK(eF,{errors:"all"})(e))}eX({id:"checkout-sequence",title:"Checkout sequence",type:e_,participants:[{id:"customer",label:"Customer"},{id:"store",label:"Store"},{id:"payments",label:"Payments"}],messages:[{id:"checkout",source:"customer",target:"store",label:"Submit checkout"},{id:"charge",source:"store",target:"payments",label:"Charge card"},{id:"charged",source:"payments",target:"store",label:"Payment approved",type:"return"},{id:"receipt",source:"store",target:"customer",label:"Order receipt",type:"return"}]}),eX({id:"api-request-sequence",title:"API request with cache miss",type:e_,participants:[{id:"browser",label:"Browser"},{id:"api",label:"API Worker"},{id:"cache",label:"Cache"},{id:"database",label:"Database"},{id:"analytics",label:"Analytics"}],messages:[{id:"request",source:"browser",target:"api",label:"GET /orders"},{id:"lookup",source:"api",target:"cache",label:"Look up orders"},{id:"miss",source:"cache",target:"api",label:"Cache miss",type:"return"},{id:"query",source:"api",target:"database",label:"Query orders"},{id:"rows",source:"database",target:"api",label:"Order rows",type:"return"},{id:"track",source:"api",target:"analytics",label:"Track request"},{id:"response",source:"api",target:"browser",label:"200 OK",type:"return"}]}),eX({id:"deploy-webhook-logos",title:"Deploy webhook",type:e_,participants:[{id:"developer",label:"Developer"},{id:"github",label:"GitHub",icon:{slug:"github"}},{id:"worker",label:"Cloudflare Worker",icon:{slug:"cloudflare"}},{id:"docker",label:"Docker build",icon:{slug:"docker"}}],messages:[{id:"push",source:"developer",target:"github",label:"git push"},{id:"webhook",source:"github",target:"worker",label:"Push webhook"},{id:"build",source:"worker",target:"docker",label:"Build image"},{id:"digest",source:"docker",target:"worker",label:"Image digest",type:"return"},{id:"accepted",source:"worker",target:"github",label:"202 Accepted",type:"return"}]});let eY="state-machine",eT=["state","final","choice"],eZ=["TB","LR"],eG=l.xCb(eT);class eD extends l.Xsx("StateMachineState")({id:l.ukk,label:l.Qrq(l.ukk),kind:l.Qrq(eG),parent:l.Qrq(l.ukk),initial:l.Qrq(l.ukk)}){}class eR extends l.Xsx("StateMachineTransition")({id:l.ukk,source:l.ukk,target:l.ukk,event:l.Qrq(l.ukk),guard:l.Qrq(l.ukk),action:l.Qrq(l.ukk)}){}class e$ extends l.Xsx("StateMachineLayout")({direction:l.xCb(eZ)}){}class ej extends l.Xsx("StateMachineDiagram")({id:l.ukk,title:l.ukk,type:l.uSQ(eY),initial:l.ukk,states:l.O31(eD).pipe(l.fXn,l.Sr8(l.tJb(1))),transitions:l.O31(eR).pipe(l.fXn,l.tiU(o.PyW([]))),layout:l.Qrq(e$),style:B.pipe(l.tiU(o.PyW({...y})))}){}let eN=l.xCb(["state_machine_too_large","invalid_state_id","duplicate_state_id","duplicate_transition_id","missing_state_label","unknown_initial_state","unknown_parent_state","nested_composite","missing_transition_source","missing_transition_target","final_has_outgoing","composite_member_transition","missing_composite_initial","underbranched_choice","unguarded_choice_branch","unreachable_state"]);function eW(e){return e.kind??"state"}function eJ(e){return new Set(e.states.flatMap(e=>e.parent?[e.parent]:[]))}function eK(e,t){return e.replace(t,"").trim()}function eQ(e){let t=[],a=eJ(e);e.states.length>30&&t.push({code:"state_machine_too_large",path:"states",message:`State machine has ${e.states.length} states; the supported maximum is 30.`,hint:"Split the machine into smaller machines or merge minor states."}),e.transitions.length>60&&t.push({code:"state_machine_too_large",path:"transitions",message:`State machine has ${e.transitions.length} transitions; the supported maximum is 60.`,hint:"Move transitions every substate shares onto their composite state."}),a.size>6&&t.push({code:"state_machine_too_large",path:"states",message:`State machine has ${a.size} composite states; the supported maximum is 6.`,hint:"Flatten minor composite states into their parents."});let s=new Map;e.states.forEach((e,a)=>{e.id.includes(":")&&t.push({code:"invalid_state_id",path:`states.[${a}].id`,message:`State id "${e.id}" contains ":".`,hint:"Use letters, digits, hyphens or underscores in state ids."}),s.has(e.id)&&t.push({code:"duplicate_state_id",path:`states.[${a}].id`,message:`State id "${e.id}" is used more than once.`,hint:"Give every state a unique id."}),s.set(e.id,e),"state"!==eW(e)||e.label||t.push({code:"missing_state_label",path:`states.[${a}].label`,message:`State "${e.id}" has no label.`,hint:"Name the state; only final states and choices may omit a label."})}),e.states.forEach((e,a)=>{if(void 0!==e.parent){let l=s.get(e.parent);l&&"state"===eW(l)?void 0!==l.parent&&t.push({code:"nested_composite",path:`states.[${a}].parent`,message:`State "${e.id}" sits in "${l.id}", which itself sits in "${l.parent}".`,hint:"Composite states hold states but not other composites; flatten one level."}):t.push({code:"unknown_parent_state",path:`states.[${a}].parent`,message:`State "${e.id}" names "${e.parent}" as its parent, which is not a state.`,hint:"Set parent to the id of a state (not a final state or choice), or remove it."})}if(void 0!==e.initial){let l=s.get(e.initial);l&&l.parent===e.id&&"final"!==eW(l)||t.push({code:"unknown_initial_state",path:`states.[${a}].initial`,message:`Composite "${e.id}" starts in "${e.initial}", which is not one of its substates.`,hint:`Set initial to a substate whose parent is "${e.id}", or remove it.`})}});let l=s.get(e.initial);l&&a.has(l.id)&&void 0===l.initial&&t.push({code:"missing_composite_initial",path:"initial",message:`The machine starts in composite "${l.id}", which has no initial substate.`,hint:`Set initial on "${l.id}" to the substate it starts in.`}),l&&void 0===l.parent&&"final"!==eW(l)||t.push({code:"unknown_initial_state",path:"initial",message:`The machine starts in "${e.initial}", which is not a top-level state.`,hint:"Set initial to the id of the top-level state the machine starts in."});let i=new Set,o=new Map;if(e.transitions.forEach((e,l)=>{i.has(e.id)&&t.push({code:"duplicate_transition_id",path:`transitions.[${l}].id`,message:`Transition id "${e.id}" is used more than once.`,hint:"Give every transition a unique id, or omit ids to generate them."}),i.add(e.id),o.set(e.source,(o.get(e.source)??0)+1);let r=s.get(e.source),n=s.get(e.target);r||t.push({code:"missing_transition_source",path:`transitions.[${l}].source`,message:`Transition "${e.id}" leaves "${e.source}", which is not a state.`,hint:"Set source to the id of a declared state."}),n||t.push({code:"missing_transition_target",path:`transitions.[${l}].target`,message:`Transition "${e.id}" enters "${e.target}", which is not a state.`,hint:"Set target to the id of a declared state."}),r&&"final"===eW(r)&&t.push({code:"final_has_outgoing",path:`transitions.[${l}].source`,message:`Transition "${e.id}" leaves final state "${r.id}".`,hint:"A final state ends the machine; leave from the state before it instead."}),r&&n&&(a.has(r.id)&&(n.id===r.id||n.parent===r.id)||a.has(n.id)&&r.parent===n.id)&&t.push({code:"composite_member_transition",path:`transitions.[${l}]`,message:`Transition "${e.id}" joins composite "${a.has(r.id)?r.id:n.id}" to itself or its own substate.`,hint:"Connect substates to each other, or the composite to a state outside it."}),n&&a.has(n.id)&&void 0===n.initial&&t.push({code:"missing_composite_initial",path:`transitions.[${l}].target`,message:`Transition "${e.id}" enters composite "${n.id}", which has no initial substate.`,hint:`Set initial on "${n.id}" to the substate it enters first, or target that substate.`})}),e.states.forEach((a,s)=>{if("choice"===eW(a)&&(o.get(a.id)??0)<2&&t.push({code:"underbranched_choice",path:`states.[${s}]`,message:`Choice "${a.id}" has fewer than two outgoing transitions.`,hint:"Give a choice two or more outgoing transitions, each with a guard."}),"choice"!==eW(a))return;let l=e.transitions.filter(e=>e.source===a.id).map(e=>e.guard?.replace(/^\s*\[|\]\s*$/gu,"").trim()??"");(l.some(e=>""===e)||l.filter(e=>"else"===e.toLowerCase()).length>1)&&t.push({code:"unguarded_choice_branch",path:`states.[${s}]`,message:`Choice "${a.id}" has a branch without its own guard.`,hint:'Give every branch of a choice a guard; one may be "else".'})}),l){let a=function(e){let t=new Map(e.states.map(e=>[e.id,e])),a=new Set,s=new Set,l=[{id:e.initial,entry:!0}];for(;l.length>0;){let{id:i,entry:o}=l.pop(),r=t.get(i);if(!(!r||a.has(i)&&(!o||s.has(i)))){if(o&&(s.add(i),r.initial&&l.push({id:r.initial,entry:!0})),!a.has(i))for(let t of(a.add(i),r.parent&&l.push({id:r.parent,entry:!1}),e.transitions))t.source===i&&l.push({id:t.target,entry:!0})}}return a}(e);e.states.forEach((e,s)=>{a.has(e.id)||t.push({code:"unreachable_state",path:`states.[${s}]`,message:`State "${e.id}" cannot be reached from the initial state.`,hint:"Add a transition into it, or make it its composite's initial substate."})})}return t.slice(0,20)}l.Xsx("StateMachineValidationIssue")({code:eN,path:l.ukk,message:l.ukk,hint:l.ukk});class e1 extends P{issues;constructor(e){super(e[0]?.message??"State machine failed semantic validation."),this.issues=e,this.name="StateMachineValidationError"}}function e0(e){var t=l.svK(ej,{errors:"all"})(e);let a=eQ(t);if(a.length>0)throw new e1(a);return t}e0({id:"order-lifecycle",title:"Order lifecycle",type:eY,initial:"pending",states:[{id:"pending",label:"Pending payment"},{id:"paid",label:"Paid"},{id:"shipped",label:"Shipped"},{id:"cancelled",label:"Cancelled"},{id:"done",kind:"final"}],transitions:[{id:"pay",source:"pending",target:"paid",event:"pay",guard:"card valid",action:"charge"},{id:"remind",source:"pending",target:"pending",event:"after 24h",action:"email"},{id:"cancel",source:"pending",target:"cancelled",event:"cancel"},{id:"ship",source:"paid",target:"shipped",event:"ship"},{id:"reject",source:"shipped",target:"paid",event:"reject shipment"},{id:"deliver",source:"shipped",target:"done",event:"deliver"},{id:"close",source:"cancelled",target:"done"}]}),e0({id:"media-player",title:"Media player",type:eY,initial:"stopped",states:[{id:"stopped",label:"Stopped"},{id:"active",label:"Active",initial:"playing"},{id:"playing",label:"Playing",parent:"active"},{id:"paused",label:"Paused",parent:"active"}],transitions:[{id:"play",source:"stopped",target:"active",event:"play"},{id:"pause",source:"playing",target:"paused",event:"pause"},{id:"resume",source:"paused",target:"playing",event:"resume"},{id:"seek",source:"playing",target:"playing",event:"seek",action:"jump"},{id:"stop",source:"active",target:"stopped",event:"stop"}]});let e2=new Intl.Segmenter(void 0,{granularity:"grapheme"}),e3=/\p{Emoji_Presentation}|\uFE0F|\p{Regional_Indicator}|\u20E3/u,e5=/^[\uFE00-\uFE0F\u200B-\u200D\u2060]+$/u;function e4(e){return Array.from(e2.segment(e),e=>e.segment)}function e6(e){var t;return e5.test(e)?0:e3.test(e)?130:(t=e.codePointAt(0)??0)>=4352&&t<=4447||t>=11904&&t<=12350||t>=12353&&t<=13311||t>=13312&&t<=19903||t>=19968&&t<=40959||t>=40960&&t<=42191||t>=44032&&t<=55203||t>=63744&&t<=64255||t>=65072&&t<=65103||t>=65280&&t<=65376||t>=65504&&t<=65510||t>=131072&&t<=262141?100:62}function e7(e){return e4(e).reduce((e,t)=>e+e6(t),0)}function e8(e,t){return Math.max(...e.split("\n").map(e=>(function(e,t){let a=0,s=0;for(let t of e4(e)){let e=e6(t);62===e?a+=1:s+=e}return a*t*.62+s*t/100})(e,t)))}function e9(e,t,a){let s=e8(e,t);return Math.max(1,Math.min(a,Math.ceil(s)),Math.ceil(s-t))}function te(e,t,a){return Math.max(e9(e,t,a),Math.ceil(e8(e,t)))}function tt(e,t){return e.split("\n").flatMap(e=>(function(e,t){if(e7(e)<=t)return[e];let a=[],s="";for(let l of e.split(" ")){if(e7(l)>t){s&&(a.push(s),s=""),a.push(...function(e,t){let a=(function(e){let t=[],a="";for(let s of e4(e)){if(!(e6(s)>62)){a+=s;continue}a&&t.push(a),t.push(s),a=""}return a&&t.push(a),t})(e).flatMap(e=>e7(e)>t?function(e,t){let a=Math.max(t,1488);return e7(e)<=a?[e]:e.split(/(?<=[/\-_.])(?=.)|(?<=\p{Ll})(?=\p{Lu})/u).flatMap(e=>e7(e)<=a?[e]:function(e,t){let a=[],s="",l=0;for(let i of e4(e)){let e=e6(i);s&&l+e>t&&(a.push(s),s="",l=0),s+=i,l+=e}return s&&a.push(s),a}(e,t))}(e,t):[e]),s=[],l="";for(let e of a){if(e7(e)>t){l&&s.push(l),s.push(e),l="";continue}l&&e7(l+e)>t&&(s.push(l),l=""),l+=e}return l&&s.push(l),s}(l,t));continue}let e=s?`${s} ${l}`:l;if(e7(e)<=t){s=e;continue}a.push(s),s=l}return s&&a.push(s),a})(e,t)).join("\n")}function ta(e,t,a){return tt(e,Math.floor(100*t/a+1e-6))}let ts=Object.freeze({maxDimension:16384,maxElements:600,maxGroupsPerElement:16,maxLayouts:128,maxLayers:64,maxPointsPerElement:256,maxSerializedBytes:15e5,maxTextLength:4096,maxZOrderEntries:600}),tl=Object.freeze({boundTextPadding:5,gap:4,maxAssetBytes:65536,maxSize:64,maxTotalAssetBytes:786432,minSize:16}),ti=["sequence-lifeline","sequence-activation","timeline-marker","chart-mark","state-marker"],to=["sequence-lifeline","sequence-activation","timeline-marker","chart-mark"],tr={"chart-mark":"Chart mark","sequence-activation":"Sequence activation","sequence-lifeline":"Sequence lifeline","state-marker":"State marker","timeline-marker":"Timeline marker"};function tn(e){let t=new Set;for(let a of e){if(t.has(a))return a;t.add(a)}}function tc(e){return"x"in e&&"y"in e}let td=new TextEncoder;function tp(e){return td.encode(e).byteLength}function th(e){let t=tl.boundTextPadding;if("ellipse"===e.shape||"circle"===e.shape){let a=1-Math.SQRT1_2;return{x:t+e.width/2*a,y:t+e.height/2*a}}return"diamond"===e.shape?{x:t+e.width/4,y:t+e.height/4}:{x:t,y:t}}function tg(e){let t=2*tl.boundTextPadding;return"ellipse"===e.shape||"circle"===e.shape?{width:Math.round(e.width/2*Math.SQRT2)-t,height:Math.round(e.height/2*Math.SQRT2)-t}:"diamond"===e.shape?{width:Math.round(e.width/2)-t,height:Math.round(e.height/2)-t}:{width:e.width-t,height:e.height-t}}function tu(e){return e?e.size+2*tl.gap:0}function tf(e){let t=new Map(e.layers.map(e=>[e.id,e]));return e=>!e.layerId||t.get(e.layerId)?.visible!==!1}function tm(e,t){let a=new Map;for(let[s,l]of e.elements.entries())"text"===l.type&&l.containerId&&t(l)&&a.set(l.containerId,{element:l,index:s});return a}function tv(e,t,a){let s=t?.text??e.label,l=t?.fontSize??16,i=t?t.maxWidth??160:Math.max(1,e.width-24),o=s.split("\n"),r=e8(s,l),n=Math.max(1,Math.min(i,r)),c=Math.ceil(o.length*l*1.35);if(e9(s,l,i)-l+24>e.width)return!0;if(a){let t=tg(e);return r>t.width||c+tu(a)>t.height}return n+24>e.width||c+18>e.height}function ty(e){let t=[];0===e.elements.length&&t.push({code:"empty_canvas",message:"CanvasSpec must contain at least one element.",path:"elements"}),e.elements.length>ts.maxElements&&t.push({code:"limit_exceeded",message:`Canvas exceeds ${ts.maxElements} elements.`,path:"elements"}),e.layers.length>ts.maxLayers&&t.push({code:"limit_exceeded",message:`Canvas exceeds ${ts.maxLayers} layers.`,path:"layers"}),e.layouts.length>ts.maxLayouts&&t.push({code:"limit_exceeded",message:`Canvas exceeds ${ts.maxLayouts} layout primitives.`,path:"layouts"}),(e.width>ts.maxDimension||e.height>ts.maxDimension)&&t.push({code:"limit_exceeded",message:`Canvas dimensions may not exceed ${ts.maxDimension}.`,path:"width"});let a=tn(e.elements.map(e=>e.id));a&&t.push({code:"duplicate_element_id",elementId:a,message:`Duplicate element id "${a}" is not allowed.`,path:"elements"});let s=tn(e.layers.map(e=>e.id));s&&t.push({code:"duplicate_layer_id",message:`Duplicate layer id "${s}" is not allowed.`,path:"layers"});let l=tn(e.zOrder);l&&t.push({code:"duplicate_z_order_element",elementId:l,message:`zOrder contains duplicate element "${l}".`,path:"zOrder"}),e.zOrder.length>ts.maxZOrderEntries&&t.push({code:"limit_exceeded",message:`zOrder exceeds ${ts.maxZOrderEntries} entries.`,path:"zOrder"});let i=new Map(e.elements.map(e=>[e.id,e])),o=e.elements.filter(e=>"node"===e.type),r=t_(e.elements),n=tn([...o.map(e=>e.nodeId),...e.elements.flatMap(e=>"frame"===e.type&&void 0!==e.nodeId?[e.nodeId]:[])]);n&&t.push({code:"invalid_binding",message:`Duplicate nodeId "${n}" makes connector bindings ambiguous.`,path:"elements"});let c=tn(e.elements.flatMap(e=>"arrow"===e.type?[e.edgeId]:[]));c&&t.push({code:"invalid_binding",message:`Duplicate edgeId "${c}" makes connector selection ambiguous.`,path:"elements"});let d=tn(e.elements.flatMap(e=>"text"===e.type&&e.containerId?[e.containerId]:[]));d&&t.push({code:"invalid_binding",elementId:d,message:`Container "${d}" has more than one bound text element.`,path:"elements"});let p=new Set(e.layers.map(e=>e.id)),h=tf(e),g=tm(e,h);t.push(...function(e){let t=[],a=0;for(let[s,l]of Object.entries(e.icons??{})){let e=tp(l.svg);a+=e,e>tl.maxAssetBytes&&t.push({code:"limit_exceeded",message:`Icon asset "${s}" exceeds ${tl.maxAssetBytes} bytes.`,path:`icons.${s}`})}return a>tl.maxTotalAssetBytes&&t.push({code:"limit_exceeded",message:`Icon assets exceed ${tl.maxTotalAssetBytes} bytes per canvas.`,path:"icons"}),t}(e)),e.elements.forEach((a,s)=>{let l,o;if(t.push(...(l=[],o=`elements[${s}]`,"width"in a&&"height"in a&&(!(a.width>0)||!(a.height>0))&&l.push({code:"invalid_geometry",elementId:a.id,message:`Element "${a.id}" must have positive width and height.`,path:o}),"points"in a&&void 0!==a.points&&a.points.length>ts.maxPointsPerElement&&l.push({code:"limit_exceeded",elementId:a.id,message:`Element "${a.id}" exceeds ${ts.maxPointsPerElement} points.`,path:`${o}.points`}),"text"in a&&a.text.length>ts.maxTextLength&&l.push({code:"limit_exceeded",elementId:a.id,message:`Text element "${a.id}" exceeds ${ts.maxTextLength} characters.`,path:`${o}.text`}),"node"===a.type&&"polygon"===a.shape&&(!a.points||a.points.length<3)&&l.push({code:"invalid_polygon",elementId:a.id,message:`Polygon "${a.id}" requires at least three points.`,path:`${o}.points`}),a.groupIds&&a.groupIds.length>ts.maxGroupsPerElement&&l.push({code:"limit_exceeded",elementId:a.id,message:`Element "${a.id}" exceeds ${ts.maxGroupsPerElement} groups.`,path:`${o}.groupIds`}),l)),"node"===a.type&&t.push(...function(e,t,a){let s=t.icon;if(!s)return[];let l=`elements[${a}].icon`,i=[];return t.rendererRole&&i.push({code:"invalid_icon",elementId:t.id,message:`${tr[t.rendererRole]} "${t.id}" cannot carry an icon.`,path:l}),u(s.slug)?e.icons&&Object.hasOwn(e.icons,s.slug)||i.push({code:"invalid_icon",elementId:t.id,message:`Node "${t.id}" references icon "${s.slug}" without an embedded asset.`,path:`${l}.slug`}):i.push({code:"invalid_icon",elementId:t.id,message:`Node "${t.id}" has an invalid icon slug "${s.slug}".`,path:`${l}.slug`}),(!Number.isFinite(s.size)||s.size<tl.minSize||s.size>tl.maxSize)&&i.push({code:"invalid_icon",elementId:t.id,message:`Node "${t.id}" icon size must be ${tl.minSize}-${tl.maxSize}.`,path:`${l}.size`}),i}(e,a,s)),"node"===a.type&&"polygon"!==a.shape&&h(a)){let e=g.get(a.id);(e||void 0===a.rendererRole)&&tv(a,e?.element,a.icon)&&t.push({code:"label_overflow",elementId:e?.element.id??a.id,message:`Label does not fit inside node "${a.id}" without changing its geometry.`,path:e?`elements[${e.index}].text`:`elements[${s}].label`})}if(a.frameId){let e=i.get(a.frameId);e&&"frame"===e.type||t.push({code:"invalid_composition",elementId:a.id,message:`Element "${a.id}" references missing frame "${a.frameId}".`,path:`elements[${s}].frameId`})}if(a.layerId&&!p.has(a.layerId)&&t.push({code:"invalid_composition",elementId:a.id,message:`Element "${a.id}" references missing layer "${a.layerId}".`,path:`elements[${s}].layerId`}),a.groupIds&&tn(a.groupIds)&&t.push({code:"invalid_composition",elementId:a.id,message:`Element "${a.id}" contains duplicate group ids.`,path:`elements[${s}].groupIds`}),"text"===a.type&&a.containerId){let e=i.get(a.containerId);e&&("node"===e.type||"arrow"===e.type)||t.push({code:"invalid_binding",elementId:a.id,message:`Text "${a.id}" references unsupported container "${a.containerId}".`,path:`elements[${s}].containerId`})}if("arrow"===a.type&&(r.has(a.sourceNodeId)||t.push({code:"invalid_binding",elementId:a.id,message:`Connector "${a.id}" references missing source "${a.sourceNodeId}".`,path:`elements[${s}].sourceNodeId`}),r.has(a.targetNodeId)||t.push({code:"invalid_binding",elementId:a.id,message:`Connector "${a.id}" references missing target "${a.targetNodeId}".`,path:`elements[${s}].targetNodeId`})),"line"===a.type)for(let[e,l]of[["startBinding",a.startBinding],["endBinding",a.endBinding]]){let o=l?i.get(l.elementId):void 0;l&&(!o||"node"!==o.type&&"frame"!==o.type)&&t.push({code:"invalid_binding",elementId:a.id,message:`Line "${a.id}" references missing binding "${l.elementId}".`,path:`elements[${s}].${e}`})}});let f=new Set(e.zOrder);for(let a of e.elements)f.has(a.id)||t.push({code:"missing_z_order_element",elementId:a.id,message:`Element "${a.id}" is missing from zOrder.`,path:"zOrder"});for(let a of e.zOrder)i.has(a)||t.push({code:"unknown_z_order_element",elementId:a,message:`zOrder references missing element "${a}".`,path:"zOrder"});for(let[a,s]of e.layouts.entries())for(let e of s.ids){let s=i.get(e);s&&tc(s)||t.push({code:"unknown_layout_target",elementId:e,message:`Layout references missing or non-positioned element "${e}".`,path:`layouts[${a}].ids`})}for(let a of e.elements.filter(e=>"frame"===e.type)){let e=new Set([a.id]),s=a.frameId;for(;s;){if(e.has(s)){t.push({code:"invalid_composition",elementId:a.id,message:`Frame "${a.id}" participates in a frame nesting cycle.`,path:"elements"});break}e.add(s);let l=i.get(s);s=l?.type==="frame"?l.frameId:void 0}}return t}function tw(e){if("text"===e.type){let t=e.text.split("\n");return{x:e.x,y:e.y,width:e.maxWidth??e8(e.text,e.fontSize),height:t.length*e.fontSize*1.35}}return{x:e.x,y:e.y,width:e.width,height:e.height}}function tx(e,t){let a=new Map(e.map(e=>[e.id,e]));return t.flatMap(e=>{let t=a.get(e);return t&&tc(t)?[t]:[]})}function tb(e,t){return e.map(e=>{var a,s;let l=t.get(e.id);return l?(a=l.x,s=l.y,tc(e)?{...e,x:a,y:s}:e):e})}function tk(e,t){return"x"===t?e.x:e.y}function tM(e,t){return"x"===t?e.width:e.height}function tC(e){return{x:e.x+e.width/2,y:e.y+e.height/2}}function tz(e,t){let a=tC(e),s=t.x-a.x,l=t.y-a.y;return Math.abs(s)>=Math.abs(l)?{x:s>=0?e.x+e.width:e.x,y:a.y}:{x:a.x,y:l>=0?e.y+e.height:e.y}}function t_(e){return new Map(e.flatMap(e=>"node"===e.type||"frame"===e.type&&void 0!==e.nodeId?[[e.nodeId,e]]:[]))}function tL(e,t=.01){let a=[];for(let s=0;s<e.length-1;s+=1){let l=e[s],i=e[s+1];if(!l||!i)continue;let o=Math.abs(l.y-i.y)<=t,r=Math.abs(l.x-i.x)<=t;if(!o&&!r)continue;let n=Math.min(o?l.x:l.y,o?i.x:i.y),c=Math.max(o?l.x:l.y,o?i.x:i.y);c-n<=t||a.push({min:n,max:c,orientation:o?"horizontal":"vertical",staticCoordinate:o?l.y:l.x,segmentIndex:s,isFirstSegment:0===s,isLastSegment:s===e.length-2})}return a}function tB(e,t){return Math.min(e.max,t.max)-Math.max(e.min,t.min)}function tA(e,t,a=.01){return e.orientation===t.orientation&&Math.abs(e.staticCoordinate-t.staticCoordinate)<=a&&tB(e,t)>a}function tS(e,t,a=.01){let s="horizontal"===e.orientation,l=s?t.y:t.x,i=l+(s?t.height:t.width),o=s?t.x:t.y,r=o+(s?t.width:t.height);return e.staticCoordinate>l+a&&e.staticCoordinate<i-a&&Math.min(e.max,r)-Math.max(e.min,o)>a}function tP(e,t){return e.isFirstSegment&&t.isFirstSegment&&null!==e.startBindingId&&e.startBindingId===t.startBindingId||e.isLastSegment&&t.isLastSegment&&null!==e.endBindingId&&e.endBindingId===t.endBindingId}function tV(e,t,a="characters"){let s=0x811c9dc5;for(let t=0;t<e.length;t+=1)s^=e.charCodeAt(t),s=Math.imul(s,0x1000193),"characters"===a&&(e.codePointAt(t)??0)>65535&&(t+=1);return"seed"===t?Math.abs(s)||1:(s>>>0).toString(16).padStart(8,"0")}l.gPz([eh,eC,eF,N,X,ej]);let tH={id:"multi-stage-rework",title:"Rework earlier stages",nodes:[{id:"start",label:"Received",kind:"start"},...["Intake","Validate","Assemble","Review","Rework","Release"].map((e,t)=>({id:String(t),label:e,kind:5===t?"end":"process"}))],edges:[{id:"start",source:"start",target:"0"},...Array.from({length:5},(e,t)=>({id:`e${t}`,source:String(t),target:String(t+1)})),...Array.from({length:4},(e,t)=>({id:`back${t}`,source:"4",target:String(t),...0===t?{label:"Retry"}:{}}))]},tq={id:"two-stage-retry",title:"Revisit earlier checks",nodes:[{id:"s",label:"Received",kind:"start"},...["Prepare","Inspect","Review","Rework"].map((e,t)=>({id:["a","b","c","d"][t],label:e,kind:"process"})),{id:"end",label:"Released",kind:"end"}],edges:[["s","a"],["a","b"],["b","c"],["c","d"],["d","end"],["d","a"],["d","b"]].map(([e,t],a)=>({id:`e${a}`,source:e,target:t}))};function tF(e){return ey({...e,type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}})}function tI(e,t="TB"){return ey({...e,type:"flowchart",layout:{direction:t,edgeRouting:"orthogonal"}})}function tE(e){return ey({...e,type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}})}function tO(e){return e0({...e,type:eY})}ey({id:"package-chain",title:"Request to hosted artifact",nodes:[{id:"app",label:"App request",kind:"start"},{id:"agent",label:"Agent / orchestration",kind:"process"},{id:"core",label:"Core diagram model",kind:"process"},{id:"renderer",label:"Renderer",kind:"process"},{id:"export",label:"Excalidraw export",kind:"process"},{id:"host",label:"Artifact hosting / storage",kind:"process"},{id:"response",label:"Hosted artifact response",kind:"end"}],edges:[{id:"request",source:"app",target:"agent",label:"Request contract"},{id:"build",source:"agent",target:"core",label:"Semantic builder input"},{id:"validate",source:"core",target:"renderer",label:"Validated diagram spec"},{id:"render",source:"renderer",target:"export",label:"CanvasSpec scene"},{id:"store",source:"export",target:"host",label:"Exported artifact bundle"},{id:"respond",source:"host",target:"response",label:"Artifact ID + hosted URLs"}],type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"scope-bypass",title:"Diagram request",nodes:[{id:"received",label:"Prompt received",kind:"start"},{id:"requirements",label:"Extract requirements",kind:"process"},{id:"scope",label:"Is the scope clear?",kind:"decision"},{id:"draft",label:"Draft typed IR",kind:"process"},{id:"review",label:"Review",kind:"end"}],edges:[{id:"extract",source:"received",target:"requirements"},{id:"assess",source:"requirements",target:"scope"},{id:"clear",source:"scope",target:"draft",label:"Yes"},{id:"unclear",source:"scope",target:"review",label:"No"},{id:"submit",source:"draft",target:"review"}],type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"rollout-failures",title:"Feature flag rollout",nodes:[{id:"ready",label:"Flag is ready",kind:"start"},{id:"internal",label:"Enable internally",kind:"process"},{id:"internal-health",label:"Internal checks healthy?",kind:"decision"},{id:"beta",label:"Enable beta cohort",kind:"process"},{id:"beta-health",label:"Beta checks healthy?",kind:"decision"},{id:"ramp",label:"Ramp to all users",kind:"process"},{id:"complete",label:"Rollout complete",kind:"end"},{id:"rollback",label:"Roll back the feature",kind:"end"}],edges:[{id:"enable",source:"ready",target:"internal"},{id:"check-internal",source:"internal",target:"internal-health"},{id:"internal-healthy",source:"internal-health",target:"beta",label:"Healthy"},{id:"internal-fail",source:"internal-health",target:"rollback",label:"Fail"},{id:"check-beta",source:"beta",target:"beta-health"},{id:"beta-healthy",source:"beta-health",target:"ramp",label:"Healthy"},{id:"beta-unhealthy",source:"beta-health",target:"rollback",label:"Unhealthy"},{id:"finish",source:"ramp",target:"complete"}],type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"release-fan-in",title:"Fix release",nodes:[{id:"confirmed",label:"Bug confirmed",kind:"start"},{id:"security",label:"Security impact?",kind:"decision"},{id:"triage",label:"Security triage",kind:"process"},{id:"hotfix",label:"Hotfix branch",kind:"process"},{id:"priority",label:"High priority?",kind:"decision"},{id:"sprint",label:"Sprint backlog",kind:"process"},{id:"release",label:"Release fix",kind:"end"},{id:"backlog",label:"Regular backlog",kind:"end"}],edges:[{id:"assess",source:"confirmed",target:"security"},{id:"secure",source:"security",target:"triage",label:"Yes"},{id:"branch",source:"triage",target:"hotfix"},{id:"ship-hotfix",source:"hotfix",target:"release"},{id:"prioritize",source:"security",target:"priority",label:"No"},{id:"plan",source:"priority",target:"sprint",label:"Yes"},{id:"ship-sprint",source:"sprint",target:"release"},{id:"defer",source:"priority",target:"backlog",label:"No"}],type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"stability-fan-in",title:"Incident remediation",nodes:[{id:"evidence",label:"Collect evidence",kind:"start"},{id:"cause",label:"Classify root cause",kind:"decision"},{id:"rollback",label:"Roll back deploy",kind:"process"},{id:"hotfix",label:"Prepare hotfix",kind:"process"},{id:"provider",label:"Escalate to provider",kind:"process"},{id:"stable",label:"Service stable?",kind:"decision"},{id:"monitor",label:"Monitor service",kind:"end"},{id:"escalate",label:"Escalate unstable service",kind:"process"},{id:"fresh",label:"Collect fresh evidence",kind:"process"}],edges:[{id:"classify",source:"evidence",target:"cause"},{id:"deploy",source:"cause",target:"rollback",label:"Deploy"},{id:"code",source:"cause",target:"hotfix",label:"Code"},{id:"vendor",source:"cause",target:"provider",label:"Provider"},{id:"check-rollback",source:"rollback",target:"stable"},{id:"check-hotfix",source:"hotfix",target:"stable"},{id:"check-provider",source:"provider",target:"stable"},{id:"healthy",source:"stable",target:"monitor",label:"Yes"},{id:"unhealthy",source:"stable",target:"escalate",label:"No"},{id:"gather",source:"escalate",target:"fresh"},{id:"retry",source:"fresh",target:"cause"}],type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"renewal-retry",title:"Subscription renewal",nodes:[{id:"due",label:"Renewal due",kind:"start"},{id:"charge",label:"Charge payment",kind:"process"},{id:"paid",label:"Payment succeeded?",kind:"decision"},{id:"renew",label:"Renew subscription",kind:"end"},{id:"remind",label:"Send reminder",kind:"process"},{id:"updated",label:"Payment updated?",kind:"decision"},{id:"pause",label:"Pause subscription",kind:"end"}],edges:[{id:"bill",source:"due",target:"charge"},{id:"confirm",source:"charge",target:"paid"},{id:"renewed",source:"paid",target:"renew",label:"Yes"},{id:"declined",source:"paid",target:"remind",label:"No"},{id:"wait",source:"remind",target:"updated"},{id:"retry",source:"updated",target:"charge",label:"Yes"},{id:"expired",source:"updated",target:"pause",label:"No"}],type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"cancellation-convergence",title:"Subscription cancellation",nodes:[{id:"requested",label:"Member requests cancellation",kind:"start"},{id:"reason",label:"Collect the cancellation reason",kind:"process"},{id:"eligible",label:"Eligible for a retention offer?",kind:"decision"},{id:"offer",label:"Present retention offer",kind:"process"},{id:"accepted",label:"Offer accepted?",kind:"decision"},{id:"keep",label:"Retain member",kind:"end"},{id:"confirm",label:"Confirm cancellation",kind:"process"},{id:"close",label:"Close account",kind:"end"}],edges:[{id:"record",source:"requested",target:"reason"},{id:"check",source:"reason",target:"eligible"},{id:"offer-save",source:"eligible",target:"offer",label:"Yes"},{id:"not-eligible",source:"eligible",target:"confirm",label:"No"},{id:"decide",source:"offer",target:"accepted"},{id:"kept",source:"accepted",target:"keep",label:"Yes"},{id:"declined",source:"accepted",target:"confirm",label:"No"},{id:"close-account",source:"confirm",target:"close"}],type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"shared-feedback-returns",title:"Revisit earlier checks",nodes:[{id:"start",label:"Received",kind:"start"},{id:"a",label:"Intake",kind:"process"},{id:"b",label:"Inspect",kind:"process"},{id:"c",label:"Review",kind:"process"},{id:"d",label:"Approve",kind:"process"},{id:"end",label:"Released",kind:"end"}],edges:[{id:"entry",source:"start",target:"a"},{id:"ab",source:"a",target:"b"},{id:"bc",source:"b",target:"c"},{id:"cd",source:"c",target:"d"},{id:"release",source:"d",target:"end"},{id:"ba",source:"b",target:"a"},{id:"ca",source:"c",target:"a",label:"Retry"},{id:"da",source:"d",target:"a"}],type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({...tq,type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"feedback-chain",title:"Repeat inspection",nodes:[{id:"start",label:"Received",kind:"start"},{id:"a",label:"Prepare",kind:"process"},{id:"b",label:"Inspect",kind:"process"},{id:"c",label:"Approve",kind:"process"},{id:"end",label:"Released",kind:"end"}],edges:[{id:"start",source:"start",target:"a"},{id:"ab",source:"a",target:"b"},{id:"bc",source:"b",target:"c"},{id:"ca",source:"c",target:"a",label:"Retry"},{id:"end",source:"c",target:"end"}],type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({...tH,type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"feedback-skip-stubs",title:"Retry with skipped stages",nodes:[{id:"0",label:"Step 0",kind:"start"},{id:"1",label:"Step 1",kind:"process"},{id:"2",label:"Step 2",kind:"process"},{id:"3",label:"Step 3",kind:"process"},{id:"4",label:"Step 4",kind:"process"},{id:"5",label:"Step 5",kind:"end"}],edges:[{id:"e0",source:"0",target:"1"},{id:"e1",source:"1",target:"2"},{id:"e2",source:"2",target:"3"},{id:"e3",source:"3",target:"4",label:"Path 3"},{id:"e4",source:"4",target:"5"},{id:"e5",source:"3",target:"5"},{id:"feedback",source:"4",target:"1"},{id:"e7",source:"2",target:"4"}],type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"decision-feedback",title:"Retry a failed attempt",nodes:[{id:"start",label:"Start",kind:"start"},{id:"attempt",label:"Attempt",kind:"process"},{id:"check",label:"Success?",kind:"decision"},{id:"done",label:"Done",kind:"end"}],edges:[{id:"start",source:"start",target:"attempt"},{id:"check",source:"attempt",target:"check"},{id:"yes",source:"check",target:"done",label:"Yes"},{id:"feedback",source:"check",target:"attempt",label:"Retry"}],type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"review-feedback",title:"Review feedback",nodes:[{id:"start",label:"Received",kind:"start"},{id:"prepare",label:"Prepare submission",kind:"process"},{id:"review",label:"Ready?",kind:"decision"},{id:"revise",label:"Request changes",kind:"process"},{id:"done",label:"Accepted",kind:"end"}],edges:[{id:"start",source:"start",target:"prepare"},{id:"review",source:"prepare",target:"review"},{id:"no",source:"review",target:"revise",label:"No"},{id:"feedback",source:"revise",target:"prepare",label:"Changes ready"},{id:"yes",source:"review",target:"done",label:"Yes"}],type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"wait-retry",title:"Wait and retry",nodes:[{id:"start",label:"Join queue",kind:"start"},{id:"responds",label:"Responds?",kind:"decision"},{id:"leave",label:"Leave queue",kind:"end"},{id:"ready",label:"Ready?",kind:"decision"},{id:"done",label:"Continue",kind:"end"},{id:"wait",label:"Keep waiting",kind:"process"}],edges:[{id:"start",source:"start",target:"responds"},{id:"leave",source:"responds",target:"leave",label:"No"},{id:"ready",source:"responds",target:"ready",label:"Yes"},{id:"done",source:"ready",target:"done",label:"Yes"},{id:"wait",source:"ready",target:"wait",label:"No"},{id:"feedback",source:"wait",target:"responds"}],type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"content-moderation-flow",title:"Content moderation flow",nodes:[{id:"report",label:"Report received",kind:"start"},{id:"scan",label:"Automated scan runs",kind:"process"},{id:"severe",label:"Severe harm detected?",kind:"decision"},{id:"remove",label:"Remove content",kind:"process"},{id:"escalate",label:"Escalate to safety",kind:"process"},{id:"violation",label:"Policy violation?",kind:"decision"},{id:"restore_none",label:"Restore content",kind:"end"},{id:"review",label:"Human review",kind:"process"},{id:"action",label:"Action needed?",kind:"decision"},{id:"limit",label:"Limit content",kind:"end"},{id:"restore_review",label:"Restore content",kind:"end"},{id:"closed_severe",label:"Severe case closed",kind:"end"}],edges:[{id:"edge-1",source:"report",target:"scan"},{id:"edge-2",source:"scan",target:"severe"},{id:"edge-3",source:"severe",target:"remove",label:"Yes"},{id:"edge-4",source:"severe",target:"violation",label:"No"},{id:"edge-5",source:"remove",target:"escalate"},{id:"edge-6",source:"escalate",target:"closed_severe"},{id:"edge-7",source:"violation",target:"restore_none",label:"No"},{id:"edge-8",source:"violation",target:"review",label:"Yes"},{id:"edge-9",source:"review",target:"action"},{id:"edge-10",source:"action",target:"limit",label:"Yes"},{id:"edge-11",source:"action",target:"restore_review",label:"No"}],layout:{direction:"TB"},style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"},type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"data-import-validation",title:"Data import validation",nodes:[{id:"upload",label:"File uploaded",kind:"start"},{id:"parse",label:"Parse file",kind:"process"},{id:"parse_ok",label:"Parsing succeeded?",kind:"decision"},{id:"reject",label:"Reject file",kind:"process"},{id:"rejected_end",label:"File rejected",kind:"end"},{id:"validate",label:"Validate schema",kind:"process"},{id:"schema_ok",label:"Schema valid?",kind:"decision"},{id:"mapping_errors",label:"Return mapping errors",kind:"process"},{id:"mapping_end",label:"Mapping errors returned",kind:"end"},{id:"dedupe",label:"Deduplicate records",kind:"process"},{id:"dup_found",label:"Duplicates found?",kind:"decision"},{id:"merge",label:"Merge duplicates",kind:"process"},{id:"import",label:"Import records",kind:"process"},{id:"done",label:"Import complete",kind:"end"}],edges:[{id:"edge-1",source:"upload",target:"parse"},{id:"edge-2",source:"parse",target:"parse_ok"},{id:"edge-3",source:"parse_ok",target:"reject",label:"No"},{id:"edge-4",source:"reject",target:"rejected_end"},{id:"edge-5",source:"parse_ok",target:"validate",label:"Yes"},{id:"edge-6",source:"validate",target:"schema_ok"},{id:"edge-7",source:"schema_ok",target:"mapping_errors",label:"No"},{id:"edge-8",source:"mapping_errors",target:"mapping_end"},{id:"edge-9",source:"schema_ok",target:"dedupe",label:"Yes"},{id:"edge-10",source:"dedupe",target:"dup_found"},{id:"edge-11",source:"dup_found",target:"merge",label:"Yes"},{id:"edge-12",source:"merge",target:"import"},{id:"edge-13",source:"dup_found",target:"import",label:"No"},{id:"edge-14",source:"import",target:"done"}],layout:{direction:"TB"},style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"},type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"incident-escalation-flowchart",title:"Incident Escalation Flowchart",nodes:[{id:"alert",label:"Monitoring creates alert",kind:"start"},{id:"ack",label:"Responder acknowledges alert",kind:"process"},{id:"severity",label:"Severity?",kind:"decision"},{id:"bridge",label:"Incident bridge",kind:"process"},{id:"triage",label:"Triage queue",kind:"process"},{id:"monitor_low",label:"Monitoring: low-severity incident",kind:"process"},{id:"mitigate",label:"Mitigate impact",kind:"process"},{id:"comms",label:"Send customer communications",kind:"process"},{id:"resolve_bridge",label:"Resolve incident",kind:"end"},{id:"fix",label:"Fix available?",kind:"decision"},{id:"resolve_fix",label:"Resolve incident (fix found)",kind:"end"},{id:"escalate",label:"Escalate to incident bridge",kind:"process"},{id:"resolved_low",label:"Resolved",kind:"end"}],edges:[{id:"edge-1",source:"alert",target:"ack"},{id:"edge-2",source:"ack",target:"severity"},{id:"edge-3",source:"severity",target:"bridge",label:"High"},{id:"edge-4",source:"severity",target:"triage",label:"Medium"},{id:"edge-5",source:"severity",target:"monitor_low",label:"Low"},{id:"edge-6",source:"bridge",target:"mitigate"},{id:"edge-7",source:"mitigate",target:"comms"},{id:"edge-8",source:"comms",target:"resolve_bridge"},{id:"edge-9",source:"triage",target:"fix"},{id:"edge-10",source:"fix",target:"resolve_fix",label:"Yes"},{id:"edge-11",source:"fix",target:"escalate",label:"No"},{id:"edge-12",source:"escalate",target:"bridge"},{id:"edge-13",source:"monitor_low",target:"resolved_low"}],layout:{direction:"TB"},style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"},type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"invoice-approval",title:"Invoice approval",nodes:[{id:"received",label:"Invoice received",kind:"start"},{id:"match_po",label:"Match invoice to purchase order",kind:"process"},{id:"po_matched",label:"Invoice matches PO?",kind:"decision"},{id:"exception_review",label:"Route to exception review",kind:"process"},{id:"exception_resolved",label:"Exception resolved?",kind:"decision"},{id:"reject",label:"Reject invoice",kind:"end"},{id:"over_threshold",label:"Amount over approval threshold?",kind:"decision"},{id:"director_approval",label:"Director approval before payment",kind:"process"},{id:"schedule_payment",label:"Schedule payment",kind:"process"},{id:"paid",label:"Payment scheduled",kind:"end"}],edges:[{id:"e1",source:"received",target:"match_po"},{id:"e2",source:"match_po",target:"po_matched"},{id:"e3",source:"po_matched",target:"over_threshold",label:"Yes"},{id:"e4",source:"po_matched",target:"exception_review",label:"No"},{id:"e5",source:"exception_review",target:"exception_resolved"},{id:"e6",source:"exception_resolved",target:"over_threshold",label:"Yes"},{id:"e7",source:"exception_resolved",target:"reject",label:"No"},{id:"e8",source:"over_threshold",target:"director_approval",label:"Yes"},{id:"e9",source:"over_threshold",target:"schedule_payment",label:"No"},{id:"e10",source:"director_approval",target:"schedule_payment"},{id:"e11",source:"schedule_payment",target:"paid"}],layout:{direction:"TB"},style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"},type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"loan-underwriting",title:"Loan Application Underwriting",nodes:[{id:"submit",label:"Application submitted",kind:"start"},{id:"verify_id",label:"Verify identity",kind:"process"},{id:"id_ok",label:"Identity verified?",kind:"decision"},{id:"credit_review",label:"Credit review",kind:"process"},{id:"credit_ok",label:"Credit acceptable?",kind:"decision"},{id:"manual_uw",label:"Manual underwriting",kind:"process"},{id:"exception",label:"Exception approved?",kind:"decision"},{id:"income",label:"Income verification",kind:"process"},{id:"approve",label:"Loan approved",kind:"end"},{id:"decline",label:"Decline application",kind:"end"}],edges:[{id:"e1",source:"submit",target:"verify_id"},{id:"e2",source:"verify_id",target:"id_ok"},{id:"e3",source:"id_ok",target:"credit_review",label:"Yes"},{id:"e4",source:"id_ok",target:"decline",label:"No"},{id:"e5",source:"credit_review",target:"credit_ok"},{id:"e6",source:"credit_ok",target:"income",label:"Yes"},{id:"e7",source:"credit_ok",target:"manual_uw",label:"No"},{id:"e8",source:"manual_uw",target:"exception"},{id:"e9",source:"exception",target:"income",label:"Yes"},{id:"e10",source:"exception",target:"decline",label:"No"},{id:"e11",source:"income",target:"approve"}],layout:{direction:"TB"},style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"},type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"patient-intake-scheduling",title:"Patient Intake Scheduling",nodes:[{id:"request",label:"Patient requests appointment",kind:"start"},{id:"collect",label:"Clinic collects intake information",kind:"process"},{id:"urgent",label:"Urgent symptoms?",kind:"decision"},{id:"triage",label:"Nurse triage",kind:"process"},{id:"same_day",label:"Schedule same-day appointment",kind:"process"},{id:"insurance",label:"Is insurance valid?",kind:"decision"},{id:"routine",label:"Schedule routine appointment",kind:"process"},{id:"self_pay_q",label:"Patient accepts self-pay?",kind:"decision"},{id:"self_pay",label:"Schedule routine care (self-pay)",kind:"process"},{id:"billing",label:"Refer to billing",kind:"process"},{id:"end_same_day",label:"Same-day visit booked",kind:"end"},{id:"end_routine",label:"Routine visit booked",kind:"end"},{id:"end_self_pay",label:"Self-pay visit booked",kind:"end"},{id:"end_billing",label:"Billing referral made",kind:"end"}],edges:[{id:"e1",source:"request",target:"collect"},{id:"e2",source:"collect",target:"urgent"},{id:"e3",source:"urgent",target:"triage",label:"Yes"},{id:"e4",source:"triage",target:"same_day"},{id:"e5",source:"same_day",target:"end_same_day"},{id:"e6",source:"urgent",target:"insurance",label:"No"},{id:"e7",source:"insurance",target:"routine",label:"Valid"},{id:"e8",source:"routine",target:"end_routine"},{id:"e9",source:"insurance",target:"self_pay_q",label:"Invalid"},{id:"e10",source:"self_pay_q",target:"self_pay",label:"Yes"},{id:"e11",source:"self_pay",target:"end_self_pay"},{id:"e12",source:"self_pay_q",target:"billing",label:"No"},{id:"e13",source:"billing",target:"end_billing"}],layout:{direction:"TB"},style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"},type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"pharma-batch-disposition",title:"Pharma Batch Disposition",nodes:[{id:"received",label:"Batch received",kind:"start"},{id:"coa_review",label:"QA reviews Certificate of Analysis (CoA)",kind:"process"},{id:"spec_check",label:"Batch passes specs?",kind:"decision"},{id:"final_review",label:"QA Manager final review",kind:"process"},{id:"packaging",label:"Packaging",kind:"process"},{id:"released",label:"Packaged batch released",kind:"end"},{id:"investigation",label:"Investigation",kind:"process"},{id:"rejected",label:"Reject batch",kind:"end"}],edges:[{id:"e1",source:"received",target:"coa_review"},{id:"e2",source:"coa_review",target:"spec_check"},{id:"e3",source:"spec_check",target:"final_review",label:"Pass"},{id:"e4",source:"spec_check",target:"investigation",label:"Retest"},{id:"e5",source:"spec_check",target:"rejected",label:"Reject"},{id:"e6",source:"final_review",target:"packaging"},{id:"e7",source:"packaging",target:"released"},{id:"e8",source:"investigation",target:"final_review",label:"Returns to final review"}],layout:{direction:"TB"},style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"},type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),ey({id:"warehouse-reorder-flow",title:"Warehouse reorder flow",nodes:[{id:"count",label:"Stock count updated",kind:"start"},{id:"reorder_check",label:"Inventory below reorder point?",kind:"decision"},{id:"monitor",label:"Monitor stock",kind:"process"},{id:"monitor_end",label:"Stock monitoring continues",kind:"end"},{id:"check_supplier",label:"Check supplier availability",kind:"process"},{id:"supplier_check",label:"Supplier available?",kind:"decision"},{id:"substitute",label:"Use substitute supplier",kind:"process"},{id:"create_po",label:"Create purchase order",kind:"process"},{id:"await_delivery",label:"Await delivery",kind:"process"},{id:"reorder_end",label:"Reorder cycle complete",kind:"end"}],edges:[{id:"e1",source:"count",target:"reorder_check"},{id:"e2",source:"reorder_check",target:"monitor",label:"No"},{id:"e3",source:"monitor",target:"monitor_end"},{id:"e4",source:"reorder_check",target:"check_supplier",label:"Yes"},{id:"e5",source:"check_supplier",target:"supplier_check"},{id:"e6",source:"supplier_check",target:"create_po",label:"Yes"},{id:"e7",source:"supplier_check",target:"substitute",label:"No"},{id:"e8",source:"substitute",target:"create_po"},{id:"e9",source:"create_po",target:"await_delivery"},{id:"e10",source:"await_delivery",target:"reorder_end"}],layout:{direction:"TB"},style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"},type:"flowchart",layout:{direction:"TB",edgeRouting:"orthogonal"}}),tF({id:"loan-application-underwriting",title:"Loan Application Underwriting",nodes:[{id:"submitted",label:"Application submitted",kind:"start"},{id:"identity",label:"Verify identity",kind:"process"},{id:"identity_decision",label:"Identity verified?",kind:"decision"},{id:"identity_decline",label:"Decline application",kind:"end"},{id:"credit",label:"Credit review",kind:"process"},{id:"credit_decision",label:"Acceptable credit?",kind:"decision"},{id:"manual",label:"Manual underwriting",kind:"process"},{id:"exception",label:"Exception approved?",kind:"decision"},{id:"exception_decline",label:"Decline application",kind:"end"},{id:"income",label:"Income verification",kind:"process"},{id:"approved",label:"Approve loan",kind:"end"}],edges:[{id:"edge-1",source:"submitted",target:"identity"},{id:"edge-2",source:"identity",target:"identity_decision"},{id:"edge-3",source:"identity_decision",target:"identity_decline",label:"Failed"},{id:"edge-4",source:"identity_decision",target:"credit",label:"Verified"},{id:"edge-5",source:"credit",target:"credit_decision"},{id:"edge-6",source:"credit_decision",target:"income",label:"Acceptable"},{id:"edge-7",source:"credit_decision",target:"manual",label:"Unacceptable"},{id:"edge-8",source:"manual",target:"exception"},{id:"edge-9",source:"exception",target:"income",label:"Yes"},{id:"edge-10",source:"exception",target:"exception_decline",label:"No"},{id:"edge-11",source:"income",target:"approved"}],layout:{direction:"TB"}}),tF({id:"invoice-approval-flowchart",title:"Invoice approval flowchart",nodes:[{id:"received",label:"Invoice received",kind:"start"},{id:"match",label:"Match to purchase order",kind:"process"},{id:"matches",label:"Matches purchase order?",kind:"decision"},{id:"review",label:"Exception review",kind:"process"},{id:"resolved",label:"Exception resolved?",kind:"decision"},{id:"reject",label:"Reject invoice",kind:"end"},{id:"threshold",label:"Amount over approval threshold?",kind:"decision"},{id:"director",label:"Director approval",kind:"process"},{id:"schedule",label:"Schedule payment",kind:"process"},{id:"payment",label:"Payment",kind:"end"}],edges:[{id:"edge-1",source:"received",target:"match"},{id:"edge-2",source:"match",target:"matches"},{id:"edge-3",source:"matches",target:"review",label:"No"},{id:"edge-4",source:"review",target:"resolved"},{id:"edge-5",source:"resolved",target:"reject",label:"No — unresolved"},{id:"edge-6",source:"resolved",target:"threshold",label:"Yes — resolved"},{id:"edge-7",source:"matches",target:"threshold",label:"Yes — matched"},{id:"edge-8",source:"threshold",target:"director",label:"Yes — over threshold"},{id:"edge-9",source:"threshold",target:"schedule",label:"No — at or below threshold"},{id:"edge-10",source:"director",target:"schedule"},{id:"edge-11",source:"schedule",target:"payment"}],layout:{direction:"TB"}}),tF({id:"identifier-labels",title:"Identifier labels",nodes:[{id:"call",label:"buildSequenceDiagram",kind:"start"},{id:"check",label:"Layout renderer-independent?",kind:"decision"},{id:"export",label:"exportToExcalidrawScene(spec)",kind:"process"},{id:"fetch",label:"Fetch https://playground.sketchi.app/api/v1/artifacts/download",kind:"process"},{id:"cjk",label:"品質保証レビュー承認待ち",kind:"process"},{id:"done",label:"Ship 🚀 release",kind:"end"}],edges:[{id:"e1",source:"call",target:"check"},{id:"e2",source:"check",target:"export",label:"renderer-independent"},{id:"e3",source:"check",target:"fetch",label:"buildSequenceDiagram"},{id:"e4",source:"export",target:"cjk",label:"品質保証レビュー承認待ち"},{id:"e5",source:"fetch",target:"done",label:"https://example.com/api/v1/artifacts/download"},{id:"e6",source:"cjk",target:"done",label:"🚀🚀 shipped"}],layout:{direction:"TB"}}),tF({id:"multiline-labels",title:"Multi-line labels",nodes:[{id:"request",label:"Refund requested",kind:"start"},{id:"eligible",label:"Refund within the policy window?",kind:"decision"},{id:"provider",label:"Ask the payment provider",kind:"process"},{id:"confirmed",label:"Provider confirmed?",kind:"decision"},{id:"refund",label:"Issue the refund",kind:"process"},{id:"deny",label:"Explain the decision to the customer",kind:"end"},{id:"closed",label:"Refund closed",kind:"end"}],edges:[{id:"e1",source:"request",target:"eligible"},{id:"e2",source:"eligible",target:"provider",label:"Yes, within the window and eligible for a full refund"},{id:"e3",source:"eligible",target:"deny",label:"No — outside\nthe policy window"},{id:"e4",source:"provider",target:"confirmed",label:"Request sent to the provider"},{id:"e5",source:"confirmed",target:"refund",label:"Confirmed by the provider"},{id:"e6",source:"confirmed",target:"provider",label:"Retry after the provider\nconfirms the hold"},{id:"e7",source:"refund",target:"closed"}],layout:{direction:"TB"}}),tF({id:"competing-branch-labels",title:"Competing branch labels",nodes:[{id:"triage",label:"Triage the report",kind:"start"},{id:"kind",label:"Which kind of report?",kind:"decision"},{id:"bug",label:"Reproduce the bug",kind:"process"},{id:"feature",label:"Log the feature",kind:"process"},{id:"question",label:"Answer the question",kind:"process"},{id:"duplicate",label:"Link the duplicate",kind:"process"},{id:"reproduced",label:"Reproduced?",kind:"decision"},{id:"fix",label:"Fix and verify",kind:"process"},{id:"closed",label:"Close the report",kind:"end"}],edges:[{id:"e1",source:"triage",target:"kind"},{id:"e2",source:"kind",target:"bug",label:"Unexpected behavior"},{id:"e3",source:"kind",target:"feature",label:"Enhancement"},{id:"e4",source:"kind",target:"question",label:"Unanswered question"},{id:"e5",source:"kind",target:"duplicate",label:"Duplicate"},{id:"e6",source:"bug",target:"reproduced"},{id:"e7",source:"reproduced",target:"fix",label:"Reproduced"},{id:"e8",source:"reproduced",target:"bug",label:"Unreproducible"},{id:"e9",source:"fix",target:"closed"},{id:"e10",source:"feature",target:"closed"},{id:"e11",source:"question",target:"closed"},{id:"e12",source:"duplicate",target:"closed"}],layout:{direction:"TB"}}),tI({id:"grouped-approval",title:"Expense approval by team",groups:[{id:"employee",label:"Employee"},{id:"manager",label:"Manager"},{id:"finance",label:"Finance"}],nodes:[{id:"incurred",label:"Expense incurred",kind:"start"},{id:"submit",label:"Submit expense report",kind:"process",group:"employee"},{id:"review",label:"Review the report",kind:"process",group:"manager"},{id:"approved",label:"Approved?",kind:"decision",group:"manager"},{id:"revise",label:"Revise the report",kind:"process",group:"employee"},{id:"verify",label:"Verify receipts",kind:"process",group:"finance"},{id:"pay",label:"Pay the employee",kind:"process",group:"finance"},{id:"paid",label:"Expense paid",kind:"end"}],edges:[{id:"e1",source:"incurred",target:"submit"},{id:"e2",source:"submit",target:"review"},{id:"e3",source:"review",target:"approved"},{id:"e4",source:"approved",target:"verify",label:"yes"},{id:"e5",source:"approved",target:"revise",label:"no"},{id:"e6",source:"revise",target:"submit"},{id:"e7",source:"verify",target:"pay"},{id:"e8",source:"pay",target:"paid"}]}),tI({id:"three-zone-service",title:"Request path across network zones",groups:[{id:"internet",label:"Public internet"},{id:"edge",label:"Edge network"},{id:"private",label:"Private subnet"}],nodes:[{id:"browser",label:"Browser sends request",kind:"start",group:"internet"},{id:"cdn",label:"CDN serves cache",kind:"process",group:"edge"},{id:"cached",label:"Cache hit?",kind:"decision",group:"edge"},{id:"waf",label:"WAF filters traffic",kind:"process",group:"edge"},{id:"api",label:"API handles request",kind:"process",group:"private"},{id:"db",label:"Query the database",kind:"process",group:"private"},{id:"response",label:"Response returned",kind:"end"}],edges:[{id:"e1",source:"browser",target:"cdn"},{id:"e2",source:"cdn",target:"cached"},{id:"e3",source:"cached",target:"response",label:"hit"},{id:"e4",source:"cached",target:"waf",label:"miss"},{id:"e5",source:"waf",target:"api"},{id:"e6",source:"api",target:"db"},{id:"e7",source:"db",target:"response"}]},"LR"),tI({id:"mixed-membership",title:"Order fulfilment with partial grouping",groups:[{id:"warehouse",label:"Warehouse"},{id:"shipping",label:"Shipping partner"}],nodes:[{id:"order",label:"Order placed",kind:"start"},{id:"fraud",label:"Fraud check passed?",kind:"decision"},{id:"pick",label:"Pick items",kind:"process",group:"warehouse"},{id:"pack",label:"Pack the order",kind:"process",group:"warehouse"},{id:"label",label:"Print shipping label",kind:"process",group:"warehouse"},{id:"collect",label:"Collect parcel",kind:"process",group:"shipping"},{id:"deliver",label:"Deliver to customer",kind:"end",group:"shipping"},{id:"cancel",label:"Cancel the order",kind:"end"}],edges:[{id:"e1",source:"order",target:"fraud"},{id:"e2",source:"fraud",target:"pick",label:"yes"},{id:"e3",source:"fraud",target:"cancel",label:"no"},{id:"e4",source:"pick",target:"pack"},{id:"e5",source:"pack",target:"label"},{id:"e6",source:"label",target:"collect"},{id:"e7",source:"collect",target:"deliver"}]}),tI({id:"scattered-members",title:"Incident handling across on-call and support",groups:[{id:"support",label:"Customer support desk and escalation team"},{id:"oncall",label:"On-call"},{id:"comms",label:"Comms"}],nodes:[{id:"report",label:"Customer reports issue",kind:"start",group:"support"},{id:"triage",label:"Triage the report",kind:"process",group:"support"},{id:"outage",label:"Outage?",kind:"decision"},{id:"page",label:"Page on-call",kind:"process",group:"oncall"},{id:"mitigate",label:"Mitigate impact",kind:"process",group:"oncall"},{id:"fixed",label:"Fixed?",kind:"decision",group:"oncall"},{id:"status",label:"Post status update",kind:"process",group:"comms"},{id:"reply",label:"Reply to customer",kind:"process",group:"support"},{id:"closed",label:"Ticket closed",kind:"end",group:"support"}],edges:[{id:"e1",source:"report",target:"triage"},{id:"e2",source:"triage",target:"outage"},{id:"e3",source:"outage",target:"page",label:"yes"},{id:"e4",source:"outage",target:"reply",label:"no"},{id:"e5",source:"page",target:"mitigate"},{id:"e6",source:"mitigate",target:"fixed"},{id:"e7",source:"fixed",target:"status",label:"yes"},{id:"e8",source:"fixed",target:"mitigate",label:"not yet"},{id:"e9",source:"status",target:"reply"},{id:"e10",source:"reply",target:"closed"}]}),tI({id:"many-groups",title:"Release train across teams",groups:[{id:"product",label:"Product"},{id:"web",label:"Web team"},{id:"mobile",label:"Mobile team"},{id:"qa",label:"QA"},{id:"ops",label:"Ops"},{id:"marketing",label:"Marketing"}],nodes:[{id:"plan",label:"Plan the release",kind:"start",group:"product"},{id:"web-build",label:"Build web app",kind:"process",group:"web"},{id:"mobile-build",label:"Build mobile app",kind:"process",group:"mobile"},{id:"store",label:"Submit to app stores",kind:"process",group:"mobile"},{id:"test",label:"Regression tests",kind:"process",group:"qa"},{id:"pass",label:"Tests pass?",kind:"decision",group:"qa"},{id:"deploy",label:"Deploy to production",kind:"process",group:"ops"},{id:"announce",label:"Announce the release",kind:"end",group:"marketing"}],edges:[{id:"e1",source:"plan",target:"web-build"},{id:"e2",source:"plan",target:"mobile-build"},{id:"e3",source:"mobile-build",target:"store"},{id:"e4",source:"web-build",target:"test"},{id:"e5",source:"store",target:"test"},{id:"e6",source:"test",target:"pass"},{id:"e7",source:"pass",target:"deploy",label:"yes"},{id:"e8",source:"pass",target:"web-build",label:"no"},{id:"e9",source:"deploy",target:"announce"}]}),tI({id:"single-group",title:"Payment retries inside the billing service",groups:[{id:"billing",label:"Billing service"}],nodes:[{id:"charge",label:"Charge the card",kind:"start",group:"billing"},{id:"ok",label:"Charge succeeded?",kind:"decision",group:"billing"},{id:"wait",label:"Wait and retry",kind:"process",group:"billing"},{id:"receipt",label:"Send receipt",kind:"end",group:"billing"}],edges:[{id:"e1",source:"charge",target:"ok"},{id:"e2",source:"ok",target:"receipt",label:"yes"},{id:"e3",source:"ok",target:"wait",label:"no"},{id:"e4",source:"wait",target:"ok"}]}),tE({id:"incident-escalation",title:"Incident escalation",nodes:[{id:"alert",label:"Monitoring creates an alert",kind:"start"},{id:"ack",label:"Responder acknowledges it",kind:"process"},{id:"severity",label:"Severity",kind:"decision"},{id:"bridge",label:"Incident bridge",kind:"process"},{id:"triage",label:"Triage queue",kind:"process"},{id:"monitor",label:"Monitoring",kind:"process"},{id:"mitigate",label:"Mitigates impact",kind:"process"},{id:"comms",label:"Sends customer communications",kind:"process"},{id:"fix",label:"Is there a fix?",kind:"decision"},{id:"resolved",label:"Resolved",kind:"end"}],edges:[{id:"edge-1",source:"alert",target:"ack"},{id:"edge-2",source:"ack",target:"severity"},{id:"edge-3",source:"severity",target:"bridge",label:"High severity"},{id:"edge-4",source:"severity",target:"triage",label:"Medium severity"},{id:"edge-5",source:"severity",target:"monitor",label:"Low severity"},{id:"edge-6",source:"bridge",target:"mitigate"},{id:"edge-7",source:"mitigate",target:"comms"},{id:"edge-8",source:"comms",target:"resolved"},{id:"edge-9",source:"triage",target:"fix"},{id:"edge-10",source:"fix",target:"resolved",label:"Yes"},{id:"edge-11",source:"fix",target:"bridge",label:"No — escalate"},{id:"edge-12",source:"monitor",target:"resolved"}],style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"}}),tE({id:"incident-escalation-flowchart",title:"Incident escalation flowchart",nodes:[{id:"alert",label:"Monitoring creates an alert",kind:"start"},{id:"ack",label:"Responder acknowledges it",kind:"process"},{id:"severity",label:"Severity",kind:"decision"},{id:"bridge",label:"Incident bridge",kind:"process"},{id:"triage",label:"Triage queue",kind:"process"},{id:"monitor",label:"Monitoring low severity incidents",kind:"process"},{id:"mitigate",label:"Mitigates impact",kind:"process"},{id:"comms",label:"Sends customer communications",kind:"process"},{id:"fix",label:"Is there a fix?",kind:"decision"},{id:"escalate",label:"Escalate to the incident bridge",kind:"process"},{id:"resolve",label:"Resolve the incident",kind:"end"}],edges:[{id:"edge-1",source:"alert",target:"ack"},{id:"edge-2",source:"ack",target:"severity"},{id:"edge-3",source:"severity",target:"bridge",label:"High severity"},{id:"edge-4",source:"severity",target:"triage",label:"Medium severity"},{id:"edge-5",source:"severity",target:"monitor",label:"Low severity"},{id:"edge-6",source:"bridge",target:"mitigate"},{id:"edge-7",source:"mitigate",target:"comms"},{id:"edge-8",source:"comms",target:"resolve"},{id:"edge-9",source:"triage",target:"fix"},{id:"edge-10",source:"fix",target:"resolve",label:"Yes"},{id:"edge-11",source:"fix",target:"escalate",label:"No"},{id:"edge-12",source:"escalate",target:"bridge"},{id:"edge-13",source:"monitor",target:"resolve"}],style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"}}),tE({id:"incident-escalation-flowchart",title:"Incident escalation flowchart",nodes:[{id:"alert",label:"Monitoring creates an alert",kind:"start"},{id:"ack",label:"Responder acknowledges it",kind:"process"},{id:"severity",label:"Severity",kind:"decision"},{id:"bridge",label:"Incident bridge",kind:"process"},{id:"mitigate",label:"Mitigate impact",kind:"process"},{id:"comms",label:"Send customer communications",kind:"process"},{id:"resolve",label:"Resolve the incident",kind:"end"},{id:"triage",label:"Triage queue",kind:"process"},{id:"fix",label:"Is there a fix?",kind:"decision"},{id:"monitor",label:"Monitoring low severity incidents",kind:"process"}],edges:[{id:"edge-1",source:"alert",target:"ack"},{id:"edge-2",source:"ack",target:"severity"},{id:"edge-3",source:"severity",target:"bridge",label:"High severity"},{id:"edge-4",source:"severity",target:"triage",label:"Medium severity"},{id:"edge-5",source:"severity",target:"monitor",label:"Low severity"},{id:"edge-6",source:"bridge",target:"mitigate"},{id:"edge-7",source:"mitigate",target:"comms"},{id:"edge-8",source:"comms",target:"resolve"},{id:"edge-9",source:"triage",target:"fix"},{id:"edge-10",source:"fix",target:"resolve",label:"Yes"},{id:"edge-11",source:"fix",target:"bridge",label:"No — escalate"},{id:"edge-12",source:"monitor",target:"resolve"}],style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"}}),tE({id:"subscription-renewal-dunning",title:"Subscription renewal dunning",nodes:[{id:"due",label:"A renewal is due",kind:"start"},{id:"charge",label:"Charges payment",kind:"process"},{id:"success",label:"Payment succeeds?",kind:"decision"},{id:"renew",label:"Renew the subscription",kind:"end"},{id:"reminder",label:"Send a reminder",kind:"process"},{id:"updated",label:"Payment was updated?",kind:"decision"},{id:"expired",label:"Grace period has expired?",kind:"decision"},{id:"pause",label:"Pause the subscription",kind:"end"},{id:"another",label:"Send another reminder",kind:"process"}],edges:[{id:"edge-1",source:"due",target:"charge"},{id:"edge-2",source:"charge",target:"success"},{id:"edge-3",source:"success",target:"renew",label:"Yes"},{id:"edge-4",source:"success",target:"reminder",label:"No"},{id:"edge-5",source:"reminder",target:"updated"},{id:"edge-6",source:"updated",target:"charge",label:"Yes — retry charge"},{id:"edge-7",source:"updated",target:"expired",label:"No"},{id:"edge-8",source:"expired",target:"pause",label:"Yes"},{id:"edge-9",source:"expired",target:"another",label:"No"},{id:"edge-10",source:"another",target:"updated"}],style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"}}),tE({id:"subscription-renewal-dunning",title:"Subscription renewal dunning",nodes:[{id:"due",label:"A renewal is due",kind:"start"},{id:"charge",label:"Charges payment",kind:"process"},{id:"success",label:"Payment succeeds?",kind:"decision"},{id:"renew",label:"Renew the subscription",kind:"end"},{id:"reminder",label:"Send a reminder",kind:"process"},{id:"updated",label:"Payment was updated?",kind:"decision"},{id:"expired",label:"Grace period has expired?",kind:"decision"},{id:"pause",label:"Pause the subscription",kind:"end"}],edges:[{id:"edge-1",source:"due",target:"charge"},{id:"edge-2",source:"charge",target:"success"},{id:"edge-3",source:"success",target:"renew",label:"Yes"},{id:"edge-4",source:"success",target:"reminder",label:"No"},{id:"edge-5",source:"reminder",target:"updated"},{id:"edge-6",source:"updated",target:"charge",label:"Yes — retry the charge"},{id:"edge-7",source:"updated",target:"expired",label:"No"},{id:"edge-8",source:"expired",target:"pause",label:"Yes"},{id:"edge-9",source:"expired",target:"reminder",label:"No — send another reminder"}],style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"}}),tE({id:"patient-intake-scheduling",title:"Patient Intake Scheduling",nodes:[{id:"request",label:"Patient requests an appointment",kind:"start"},{id:"intake",label:"Clinic collects intake information",kind:"process"},{id:"urgent",label:"Are there urgent symptoms?",kind:"decision"},{id:"triage",label:"Nurse triage",kind:"process"},{id:"same-day",label:"Same-day appointment",kind:"end"},{id:"insurance",label:"Is insurance valid?",kind:"decision"},{id:"routine",label:"Schedule a routine appointment",kind:"end"},{id:"self-pay",label:"Does the patient accept self-pay?",kind:"decision"},{id:"billing",label:"Refer to billing",kind:"end"}],edges:[{id:"edge-1",source:"request",target:"intake"},{id:"edge-2",source:"intake",target:"urgent"},{id:"edge-3",source:"urgent",target:"triage",label:"Yes"},{id:"edge-4",source:"triage",target:"same-day"},{id:"edge-5",source:"urgent",target:"insurance",label:"No"},{id:"edge-6",source:"insurance",target:"routine",label:"Valid"},{id:"edge-7",source:"insurance",target:"self-pay",label:"Invalid"},{id:"edge-8",source:"self-pay",target:"routine",label:"Yes"},{id:"edge-9",source:"self-pay",target:"billing",label:"No"}],style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"}}),tE({id:"procurement-vendor-approval",title:"Procurement vendor approval",nodes:[{id:"need",label:"Business need is identified",kind:"start"},{id:"quotes",label:"Quotes are collected",kind:"process"},{id:"preferred",label:"Is there a preferred vendor?",kind:"decision"},{id:"bid",label:"Run a competitive bid",kind:"process"},{id:"risk",label:"Risk assessment",kind:"process"},{id:"acceptable",label:"Is risk acceptable?",kind:"decision"},{id:"reject",label:"Reject the vendor",kind:"end"},{id:"legal",label:"Legal review",kind:"process"},{id:"approved",label:"Does legal approve?",kind:"decision"},{id:"renegotiate",label:"Renegotiate terms",kind:"process"},{id:"contract",label:"Create the contract",kind:"end"}],edges:[{id:"edge-1",source:"need",target:"quotes"},{id:"edge-2",source:"quotes",target:"preferred"},{id:"edge-3",source:"preferred",target:"risk",label:"Yes"},{id:"edge-4",source:"preferred",target:"bid",label:"No"},{id:"edge-5",source:"bid",target:"risk"},{id:"edge-6",source:"risk",target:"acceptable"},{id:"edge-7",source:"acceptable",target:"reject",label:"No"},{id:"edge-8",source:"acceptable",target:"legal",label:"Yes"},{id:"edge-9",source:"legal",target:"approved"},{id:"edge-10",source:"approved",target:"contract",label:"Yes"},{id:"edge-11",source:"approved",target:"renegotiate",label:"No"},{id:"edge-12",source:"renegotiate",target:"legal"}],style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"}}),tE({id:"procurement-vendor-approval",title:"Procurement Vendor Approval",nodes:[{id:"need",label:"A business need is identified",kind:"start"},{id:"quotes",label:"Quotes are collected",kind:"process"},{id:"preferred",label:"Is there a preferred vendor?",kind:"decision"},{id:"bid",label:"Run a competitive bid",kind:"process"},{id:"risk",label:"Risk assessment",kind:"process"},{id:"acceptable",label:"Is risk acceptable?",kind:"decision"},{id:"reject",label:"Reject the vendor",kind:"end"},{id:"legal",label:"Legal review",kind:"process"},{id:"approve",label:"Does legal approve?",kind:"decision"},{id:"contract",label:"Create the contract",kind:"end"},{id:"renegotiate",label:"Renegotiate terms",kind:"process"}],edges:[{id:"edge-1",source:"need",target:"quotes"},{id:"edge-2",source:"quotes",target:"preferred"},{id:"edge-3",source:"preferred",target:"risk",label:"Yes"},{id:"edge-4",source:"preferred",target:"bid",label:"No"},{id:"edge-5",source:"bid",target:"risk"},{id:"edge-6",source:"risk",target:"acceptable"},{id:"edge-7",source:"acceptable",target:"reject",label:"No"},{id:"edge-8",source:"acceptable",target:"legal",label:"Yes"},{id:"edge-9",source:"legal",target:"approve"},{id:"edge-10",source:"approve",target:"contract",label:"Yes"},{id:"edge-11",source:"approve",target:"renegotiate",label:"No"},{id:"edge-12",source:"renegotiate",target:"legal"}],style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"}}),tE({id:"restaurant-waitlist",title:"Restaurant waitlist",nodes:[{id:"arrives",label:"Party arrives",kind:"start"},{id:"quote",label:"Host quotes a wait time",kind:"process"},{id:"available",label:"Table available?",kind:"decision"},{id:"seat",label:"Seat the party",kind:"end"},{id:"add",label:"Add the party to the waitlist",kind:"process"},{id:"notified",label:"Party notified",kind:"process"},{id:"responds",label:"Party responds?",kind:"decision"},{id:"remove",label:"Remove the party from the list",kind:"end"},{id:"ready",label:"Table ready?",kind:"decision"},{id:"waiting",label:"Keeps waiting",kind:"process"}],edges:[{id:"edge-1",source:"arrives",target:"quote"},{id:"edge-2",source:"quote",target:"available"},{id:"edge-3",source:"available",target:"seat",label:"Available"},{id:"edge-4",source:"available",target:"add",label:"Not available"},{id:"edge-5",source:"add",target:"notified"},{id:"edge-6",source:"notified",target:"responds"},{id:"edge-7",source:"responds",target:"remove",label:"No response"},{id:"edge-8",source:"responds",target:"ready",label:"Responds"},{id:"edge-9",source:"ready",target:"seat",label:"Ready"},{id:"edge-10",source:"ready",target:"waiting",label:"Not ready"},{id:"edge-11",source:"waiting",target:"responds"}],style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"}}),tE({id:"restaurant-waitlist",title:"Restaurant waitlist",nodes:[{id:"arrives",label:"A party arrives",kind:"start"},{id:"quote",label:"Host quotes a wait time",kind:"process"},{id:"available",label:"Is a table available?",kind:"decision"},{id:"seat",label:"Seat the party",kind:"end"},{id:"add",label:"Add the party to the waitlist",kind:"process"},{id:"notify",label:"Notify the party",kind:"process"},{id:"responds",label:"Does the party respond?",kind:"decision"},{id:"remove",label:"Remove the party from the list",kind:"end"},{id:"ready",label:"Is the table ready?",kind:"decision"},{id:"wait",label:"Keep waiting",kind:"process"}],edges:[{id:"edge-1",source:"arrives",target:"quote"},{id:"edge-2",source:"quote",target:"available"},{id:"edge-3",source:"available",target:"seat",label:"Yes"},{id:"edge-4",source:"available",target:"add",label:"No"},{id:"edge-5",source:"add",target:"notify"},{id:"edge-6",source:"notify",target:"responds"},{id:"edge-7",source:"responds",target:"remove",label:"No response"},{id:"edge-8",source:"responds",target:"ready",label:"Responds"},{id:"edge-9",source:"ready",target:"seat",label:"Ready"},{id:"edge-10",source:"ready",target:"wait",label:"Not ready"},{id:"edge-11",source:"wait",target:"responds",label:"Check response again"}],style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"}}),tE({id:"expense-approval-process",title:"Expense Approval Process",nodes:[{id:"submit",label:"Employee submits an expense report",kind:"start",group:"employee"},{id:"review",label:"Manager reviews the report",kind:"process",group:"manager"},{id:"approved",label:"Is it approved?",kind:"decision",group:"manager"},{id:"revise",label:"Employee revises the report",kind:"process",group:"employee"},{id:"resubmit",label:"Employee resubmits it for review",kind:"process",group:"employee"},{id:"verify",label:"Finance verifies the receipts",kind:"process",group:"finance"},{id:"pay",label:"Finance pays the employee",kind:"end",group:"finance"}],edges:[{id:"edge-1",source:"submit",target:"review"},{id:"edge-2",source:"review",target:"approved"},{id:"edge-3",source:"approved",target:"revise",label:"Rejected"},{id:"edge-4",source:"revise",target:"resubmit"},{id:"edge-5",source:"resubmit",target:"review"},{id:"edge-6",source:"approved",target:"verify",label:"Approved"},{id:"edge-7",source:"verify",target:"pay"}],groups:[{id:"employee",label:"Employee"},{id:"manager",label:"Manager"},{id:"finance",label:"Finance"}],style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"}}),tE({id:"content-moderation",title:"Content moderation",nodes:[{id:"report",label:"Report is received",kind:"start"},{id:"scan",label:"Automated scan runs",kind:"process"},{id:"severe",label:"Severe harm detected?",kind:"decision"},{id:"remove",label:"Remove the content",kind:"process"},{id:"escalate",label:"Escalate to safety",kind:"end"},{id:"violation",label:"Policy violation?",kind:"decision"},{id:"restore",label:"Restore content",kind:"end"},{id:"review",label:"Human review",kind:"process"},{id:"action",label:"Action needed?",kind:"decision"},{id:"limit",label:"Limits content",kind:"end"}],edges:[{id:"edge-1",source:"report",target:"scan"},{id:"edge-2",source:"scan",target:"severe"},{id:"edge-3",source:"severe",target:"remove",label:"Yes"},{id:"edge-4",source:"remove",target:"escalate"},{id:"edge-5",source:"severe",target:"violation",label:"No"},{id:"edge-6",source:"violation",target:"restore",label:"No"},{id:"edge-7",source:"violation",target:"review",label:"Yes"},{id:"edge-8",source:"review",target:"action"},{id:"edge-9",source:"action",target:"limit",label:"Yes"},{id:"edge-10",source:"action",target:"restore",label:"No"}],style:{accentColor:"#8f707f",backgroundColor:"#fffdf8"}}),tO({id:"media-player",title:"Media player",initial:"stopped",states:[{id:"stopped",label:"Stopped"},{id:"active",label:"Active",initial:"playing"},{id:"playing",label:"Playing",parent:"active"},{id:"paused",label:"Paused",parent:"active"},{id:"ended",kind:"final"}],transitions:[{id:"transition-1-stopped-active",source:"stopped",target:"active",event:"play"},{id:"transition-2-playing-paused",source:"playing",target:"paused",event:"pause"},{id:"transition-3-paused-playing",source:"paused",target:"playing",event:"resume"},{id:"transition-4-playing-playing",source:"playing",target:"playing",event:"seek",action:"jump to position"},{id:"transition-5-active-stopped",source:"active",target:"stopped",event:"stop"},{id:"transition-6-stopped-ended",source:"stopped",target:"ended",event:"eject"}]}),tO({id:"media-player",title:"Media player",initial:"stopped",states:[{id:"stopped",label:"Stopped"},{id:"active",label:"Active",initial:"playing"},{id:"playing",label:"Playing",parent:"active"},{id:"paused",label:"Paused",parent:"active"},{id:"final",kind:"final"}],transitions:[{id:"transition-1-stopped-active",source:"stopped",target:"active",event:"play"},{id:"transition-2-playing-paused",source:"playing",target:"paused",event:"pause"},{id:"transition-3-paused-playing",source:"paused",target:"playing",event:"resume"},{id:"transition-4-playing-playing",source:"playing",target:"playing",event:"seek",action:"jump to position"},{id:"transition-5-active-stopped",source:"active",target:"stopped",event:"stop"},{id:"transition-6-stopped-final",source:"stopped",target:"final",event:"eject"}]}),tO({id:"network-connection",title:"Network connection",initial:"disconnected",states:[{id:"disconnected",label:"Disconnected"},{id:"connecting",label:"Connecting"},{id:"connected",label:"Connected",initial:"idle"},{id:"idle",label:"Idle",parent:"connected"},{id:"streaming",label:"Streaming",parent:"connected"},{id:"retry_choice",kind:"choice"},{id:"failed",label:"Failed"},{id:"end",kind:"final"}],transitions:[{id:"transition-1-disconnected-connecting",source:"disconnected",target:"connecting",event:"Connect"},{id:"transition-2-connecting-connected",source:"connecting",target:"connected",event:"handshake ok"},{id:"transition-3-connecting-retry-choice",source:"connecting",target:"retry_choice",event:"timeout"},{id:"transition-4-retry-choice-connecting",source:"retry_choice",target:"connecting",guard:"retries < 3",action:"increment retries"},{id:"transition-5-retry-choice-failed",source:"retry_choice",target:"failed",guard:"no retries left"},{id:"transition-6-failed-end",source:"failed",target:"end"},{id:"transition-7-idle-streaming",source:"idle",target:"streaming",event:"start stream"},{id:"transition-8-streaming-idle",source:"streaming",target:"idle",event:"stop stream"},{id:"transition-9-connected-disconnected",source:"connected",target:"disconnected",event:"Disconnect"}]}),tO({id:"order-lifecycle",title:"Order lifecycle",initial:"pending",states:[{id:"pending",label:"Pending payment"},{id:"paid",label:"Paid"},{id:"shipped",label:"Shipped"},{id:"delivered",label:"Delivered"},{id:"cancelled",label:"Cancelled"},{id:"refunded",label:"Refunded"},{id:"end",kind:"final"}],transitions:[{id:"transition-1-pending-paid",source:"pending",target:"paid",event:"pay",guard:"card valid",action:"charge card"},{id:"transition-2-pending-cancelled",source:"pending",target:"cancelled",event:"cancel"},{id:"transition-3-paid-shipped",source:"paid",target:"shipped",event:"ship"},{id:"transition-4-paid-cancelled",source:"paid",target:"cancelled",event:"cancel",action:"refund payment"},{id:"transition-5-shipped-delivered",source:"shipped",target:"delivered",event:"deliver"},{id:"transition-6-shipped-paid",source:"shipped",target:"paid",event:"return to sender"},{id:"transition-7-delivered-refunded",source:"delivered",target:"refunded",event:"request return",guard:"within 30 days",action:"issue refund"},{id:"transition-8-delivered-end",source:"delivered",target:"end"},{id:"transition-9-cancelled-end",source:"cancelled",target:"end"},{id:"transition-10-refunded-end",source:"refunded",target:"end"}]});let tU=20*Math.PI/180;function tX(e){return 2e3/(Math.max(e.width,e.height,1)+40)}function tY(e){let t=[];for(let a of e){let e=t.at(-1);if(e&&.01>=Math.hypot(a.x-e.x,a.y-e.y))continue;let s=t.at(-2);if(s&&e&&.01>=Math.abs((e.x-s.x)*(a.y-e.y)-(e.y-s.y)*(a.x-e.x))&&(e.x-s.x)*(a.x-e.x)+(e.y-s.y)*(a.y-e.y)>0){t[t.length-1]=a;continue}t.push(a)}return t}function tT(e){let t=[];for(let a=0;a<e.length-1;a+=1){let s=e[a],l=e[a+1],i=.01>=Math.abs(s.y-l.y);!i&&Math.abs(s.x-l.x)>.01||t.push({horizontal:i,at:i?s.y:s.x,min:Math.min(i?s.x:s.y,i?l.x:l.y),max:Math.max(i?s.x:s.y,i?l.x:l.y),first:0===a,last:a===e.length-2})}return t}function tZ(e,t){let a=tY(e.points),s=a[0],l=a.at(-1);if(!s||!l)return[];let i=new Map;for(let e=1;e<a.length-2;e+=1){let[o,r,n,c]=[a[e-1],a[e],a[e+1],a[e+2]],d={x:r.x-o.x,y:r.y-o.y},p={x:n.x-r.x,y:n.y-r.y},h={x:c.x-n.x,y:c.y-n.y},g=[d,p,h].every(e=>.01>=Math.abs(e.x)||.01>=Math.abs(e.y)),u=.01>=Math.abs(d.x*h.y-d.y*h.x)&&d.x*h.x+d.y*h.y>0,f=.01>=Math.abs(d.x*p.x+d.y*p.y),m=Math.hypot(p.x,p.y);g&&u&&f&&!(m*t>=150)&&(!i.has("end")&&Math.hypot(l.x-n.x,l.y-n.y)*t<=90&&2*m<=Math.hypot(d.x,d.y)?i.set("end",m):!i.has("start")&&Math.hypot(r.x-s.x,r.y-s.y)*t<=90&&2*m<=Math.hypot(h.x,h.y)&&i.set("start",m))}return[...i].map(([t,a])=>({kind:"endpoint-jog",arrowIds:[e.id],endpoint:t,message:`Arrow "${e.id}" steps ${a.toFixed(1)} units sideways near its ${"end"===t?"arrowhead":"start"}.`}))}function tG(e,t,a,s,l){return t.some(t=>s.some(s=>{if(t.horizontal!==s.horizontal||Math.abs(t.at-s.at)*l>=24)return!1;let i=Math.min(t.max,s.max)-Math.max(t.min,s.min);return!(i*l<30)&&!((t.first&&s.first&&e.sourceId&&e.sourceId===a.sourceId||t.last&&s.last&&e.targetId&&e.targetId===a.targetId)&&i*l<=90)}))}function tD(e){if(!1===e.endArrowhead)return;let t=e.points.filter((e,t,a)=>0===t||Math.hypot(e.x-a[t-1].x,e.y-a[t-1].y)>.01),a=t.at(-1),s=t.at(-2);if(!a||!s)return;let l=Math.hypot(a.x-s.x,a.y-s.y),i=Math.min(25,l/2),o=(a.x-s.x)/l,r=(a.y-s.y)/l,n=e=>({x:a.x-i*(o*Math.cos(e)-r*Math.sin(e)),y:a.y-i*(r*Math.cos(e)+o*Math.sin(e))});return[a,n(tU),n(-tU)]}function tR(e,t,a){let s=a.x-t.x,l=a.y-t.y,i=0===s&&0===l?0:Math.max(0,Math.min(1,((e.x-t.x)*s+(e.y-t.y)*l)/(s*s+l*l)));return Math.hypot(e.x-(t.x+i*s),e.y-(t.y+i*l))}function t$(e,t,a,s){let l=(e,t,a)=>(t.x-e.x)*(a.y-e.y)-(t.y-e.y)*(a.x-e.x);return l(e,t,a)*l(e,t,s)<0&&l(a,s,e)*l(a,s,t)<0}function tj(e,t){let a=e.flatMap((a,s)=>e.slice(s+1).flatMap(e=>{let s,l;return[tG(a,tT(tY(a.points)),e,tT(tY(e.points)),t)?{kind:"near-coincident-corridor",arrowIds:[a.id,e.id],message:`Arrows "${a.id}" and "${e.id}" run side by side closer than 24 px.`}:void 0,(s=tD(a),l=tD(e),s&&l&&(function(e,t){let a=e=>e.map((t,a)=>[t,e[(a+1)%e.length]]),s=1/0;for(let[l,i]of a(e))for(let[e,o]of a(t)){if(t$(l,i,e,o))return 0;s=Math.min(s,tR(l,e,o),tR(i,e,o),tR(e,l,i),tR(o,l,i))}return s}(s,l)-2)*t<8?{kind:"touching-arrowheads",arrowIds:[a.id,e.id],message:`Arrowheads of "${a.id}" and "${e.id}" touch.`}:void 0)].filter(e=>void 0!==e)}));return[...e.flatMap(e=>tZ(e,t)),...a.filter(e=>"near-coincident-corridor"===e.kind),...a.filter(e=>"touching-arrowheads"===e.kind)]}function tN(e,t){let a=24/t+2,s=e.map(e=>{let t=tD(e);return{arrow:e,bounds:tW([...e.points,...t??[]]),head:t,headBounds:t?tW(t):void 0,runs:tT(tY(e.points))}});return e=>{let l=tT(tY(e.points)),i=tW(e.points,a),o=e.points.slice(1).map((t,s)=>{let l=e.points[s];return{bounds:tW([l,t],a),from:l,to:t}}),r=s.filter(({arrow:t,bounds:a})=>t.id!==e.id&&tJ(i,a)),n=new Set(r.filter(({arrow:a,runs:s})=>tG(e,l,a,s,t)).map(({arrow:e})=>e.id));return{arrowheadsCrossed:new Set(r.filter(({head:e,headBounds:a})=>e&&o.some(({bounds:s,from:l,to:i})=>tJ(s,a)&&(function(e,t,a){let s=1/0;for(let[l,i]of a.entries()){let o=a[(l+1)%a.length];if(t$(e,t,i,o))return 0;s=Math.min(s,tR(e,i,o),tR(t,i,o),tR(i,e,t),tR(o,e,t))}return s}(l,i,e)-2)*t<8)).map(({arrow:e})=>e.id)).size,corridors:n.size,jogs:tZ(e,t).length}}}function tW(e,t=0){let a=e.map(e=>e.x),s=e.map(e=>e.y);return{maxX:Math.max(...a)+t,maxY:Math.max(...s)+t,minX:Math.min(...a)-t,minY:Math.min(...s)-t}}function tJ(e,t){return e.minX<=t.maxX&&t.minX<=e.maxX&&e.minY<=t.maxY&&t.minY<=e.maxY}let tK=Object.freeze({clearance:4,fontSize:14,height:21}),tQ=/[@%MW]/u,t1=/[A-Z0-9mw#$&_~]/u,t0=new Intl.Segmenter(void 0,{granularity:"grapheme"});function t2(e){let{fontSize:t}=tK,a=0;for(let{segment:s}of t0.segment(e))a+=tQ.test(s)?1.02*t:t1.test(s)?.86*t:/^[\x20-\x7e]$/u.test(s)?e8(s,t):Math.max(.86*t,e8(s,t));return Math.ceil(a)}function t3(e){let{clearance:t,height:a}=tK,s=t2(e.name??"Frame");return{x:e.x-t,y:e.y-a-t,width:s+2*t,height:a+t-1}}let t5=/[,;]\s*(?:id|label|kind|group|source|target|title|direction|nodes|edges)\s*:?\s*$/i;function t4(e){let t=e.trim();for(;;){let e=t.replace(t5,"").trim();if(e===t)return t;t=e}}class t6 extends l.Xsx("ContractSchemaIssue")({code:af("custom"),issueTag:l.xCb(["Filter","InvalidType","InvalidValue","MissingKey","UnexpectedKey","Forbidden","OneOf","AnyOf"]),astKind:l.Qrq(l.QfV),missingKeyCode:l.Qrq(l.uSQ("invalid_type")),message:l.QfV,path:l.O31(l.pHd)},{identifier:void 0}){}class t7 extends l.rNF()("ContractSchemaError",{issues:l.O31(l.O3D(t6))}){}let t8=e=>{var t;if("InvalidType"!==e._tag)return d.vp(e);let a=d.bZ(e)?e.input:void 0;return`Invalid input: expected ${t=e.ast,c.Kg(t)?"string":c.Et(t)?"number":c.Lm(t)?"boolean":c.tF(t)?"array":c.RP(t)?"object":c.c$(t)?JSON.stringify(t.literal):"value"}, received ${null===a?"null":Array.isArray(a)?"array":typeof a}`},t9=d.ID({leafHook:t8});function ae(e){let t,a;return new t7({issues:(t=[],((a=(e,s,l)=>{switch(e._tag){case"Pointer":return a(e.issue,[...s,...e.path],l);case"Encoding":return a(e.issue,s,l);case"Composite":for(let t of e.issues)a(t,s,e.ast);return;case"AnyOf":if(e.issues.length>0){for(let t of e.issues)a(t,s,e.ast);return}break;case"Filter":if(void 0===d.VY(e)&&"InvalidValue"!==e.issue._tag)return a(e.issue,s,l)}let i="ast"in e?e.ast:l,o="MissingKey"===e._tag&&e.annotations?.[ai]==="invalid_type"?"invalid_type":void 0,r=i&&c.mi(i)&&i.types.every(c.c$)?"LiteralUnion":i?._tag,n=i?.annotations?.[al],p="string"==typeof n?[...s,n]:s;for(let a of t9(e).issues)t.push({code:"custom",issueTag:e._tag,...o?{missingKeyCode:o}:{},...r?{astKind:r}:{},message:a.message,path:p})})(e.issue,[]),t.length>1&&t.every(e=>"source"===e.path[0]))?[{code:"custom",issueTag:"AnyOf",astKind:"Union",message:"Invalid input",path:["source"]}]:t)})}let at=new Set(["x-sketchi-default","x-sketchi-one-of","const","exclusiveMaximum","exclusiveMinimum","maximum","maxLength","maxItems","minimum","minItems","minLength","pattern"]),aa="x-sketchi-default",as="x-sketchi-one-of",al="codeModeDiscriminator",ai="codeModeMissingKeyCode";function ao(e){return null!==e&&"object"==typeof e&&!Array.isArray(e)}function ar(e){let t=l._oz(l.AxX(e),{includeAnnotationKey:e=>at.has(e),onExcessProperty:"error"});return function e(t){if(Array.isArray(t))return t.map(e);if(!ao(t))return t;let a=Object.fromEntries(Object.entries(t).map(([t,a])=>[t,e(a)])),s=!0===a[as];delete a[as],s&&Array.isArray(a.anyOf)&&(a.oneOf=a.anyOf,delete a.anyOf);let l=a.allOf;if(Array.isArray(l)){let e=[];for(let t of l)ao(t)&&Object.hasOwn(t,aa)?a.default=t[aa]:e.push(t);0===e.length?delete a.allOf:a.allOf=e}return a}({$schema:"https://json-schema.org/draft/2020-12/schema",...t.schema,...0===Object.keys(t.definitions).length?{}:{$defs:t.definitions}})}function an(){return l.QfV.check(l.tJb(1,{message:"Too small: expected string to have >=1 characters"}))}function ac(e){return l.O31(e).pipe(l.fXn).check(l.tJb(1,{message:"Too small: expected array to have >=1 items"}))}function ad(e){return l.Qrq(e)}function ap(e){return e.pipe(l.usV({[ai]:"invalid_type",messageMissingKey:"Invalid input: expected string, received undefined"}))}function ah(e){return e.pipe(l.usV({[ai]:"invalid_type",messageMissingKey:"Invalid input: expected object, received undefined"}))}function ag(e){return e.pipe(l.usV({[ai]:"invalid_type",messageMissingKey:"Invalid input: expected array, received undefined"}))}function au(e){return l.xCb(e).annotate({message:`Invalid option: expected one of ${e.map(e=>JSON.stringify(e)).join("|")}`})}function af(e){return ay(e,l.QfV)}function am(e){return ay(e,l.wNn)}function av(e){return ay(e,l.v8c)}function ay(e,t){let a=l.hzj()([],()=>(t,a,s)=>t===e?o.PyW(e):o.fJG(new d.eE(a,t,s)),{message:`Invalid literal value, expected ${JSON.stringify(e)}`,toCodecJson:()=>l.nfo()(t.annotate({const:e}),{decode:p.pd(()=>e),encode:p.pd(e=>e)})});return l.uSQ(e).pipe(l.GLL(a))}let aw=an(),ax=ap(aw),ab=l.wYs,ak=l.wNn.check(l.MIs(),l.yJO(0,{message:"Too small: expected number to be >0"})),aM=/^#[0-9a-fA-F]{6}$/u;function aC(e){return l.QfV.annotate(void 0===e?{}:{default:e}).check(l.Pto(aM,{message:`Invalid string: must match pattern /${aM.source}/`}))}let az=aC(),a_=["excalidraw","scene","png"],aL=["excalidraw","scene"],aB=Object.assign(au(a_),{options:a_}),aA=Object.assign(au(aL),{options:aL});class aS extends l.Xsx("ArtifactProvenance")({sourceArtifactId:ax.pipe(l.Wa3)},{identifier:void 0}){}let aP=["missing_field","invalid_type","invalid_enum","invalid_color","duplicate_node_id","duplicate_edge_id","missing_edge_source","missing_edge_target","self_loop","missing_start","multiple_starts","missing_end","start_has_incoming","end_has_outgoing","unreachable_node","nonterminating_node","missing_outgoing_edge","underbranched_decision","unlabeled_decision_branch","duplicate_decision_branch_label","disconnected_graph","flowchart_too_large","duplicate_group_id","unknown_node_group","empty_group","mindmap_too_deep","mindmap_too_large","sequence_too_large","invalid_timeline_date","duplicate_event_id","invalid_timeline_order","timeline_too_large","invalid_timeline_span","invalid_timeline_lane","chart_too_large","chart_series_mismatch","duplicate_chart_category","invalid_chart_series","invalid_chart_value","invalid_chart_option","state_machine_too_large","invalid_state","unknown_initial_state","invalid_composite","final_has_outgoing","underbranched_choice","request_too_large","generic_label","label_too_long","quality_below_threshold","render_failed","text_overflow","arrow_binding_invalid","arrow_overlap","export_invalid_scene","storage_read_failed","storage_write_failed","unsupported_artifact_format","patch_source_unavailable","unknown_patch_target","unsupported_patch_operation","patch_preserve_connectivity_failed","patch_output_invalid","duplicate_element_id","duplicate_layer_id","invalid_canvas_binding","invalid_canvas_composition","invalid_canvas_geometry","invalid_polygon","canvas_limit_exceeded","invalid_z_order","unknown_layout_target","unknown_icon","invalid_canvas_icon","icon_dropped"],aV=Object.assign(au(aP),{options:aP}),aH=au(["request","diagram","node","edge","group","element","layer","artifact"]),aq=au(["input","canvas","flowchart","mindmap","quality","render","export","storage"]);class aF extends l.Xsx("CodeModeIssueRef")({kind:aH,id:ad(aw),path:ad(aw)},{identifier:void 0}){}class aI extends l.Xsx("CodeModeIssue")({code:aV,severity:au(["error","warning"]),stage:aq,ref:ad(aF),message:ax,hint:ax},{identifier:void 0}){}let aE=["start","process","decision","end"],aO=Object.assign(au(aE),{options:aE}),aU=["setDefaultStyle","setStyle","setShape","translate","replaceText","rerouteEdges","insert","remove","replace","reorder","group","ungroup"];Object.assign(au(aU),{options:aU});let aX=ap(an().check(l.NYj(128,{message:"Too big: expected string to have <=128 characters"})));class aY extends l.Xsx("NodeIconSpec")({slug:aX},{identifier:void 0}){}class aT extends l.Xsx("FlowchartSpecNode")({id:ax,label:ax,kind:aO,description:ad(aw),icon:ad(aY),group:ad(aw)},{identifier:void 0}){}class aZ extends l.Xsx("FlowchartSpecGroup")({id:ax,label:ax},{identifier:void 0}){}class aG extends l.Xsx("FlowchartSpecEdge")({id:ad(aw),source:ax,target:ax,label:ad(aw)},{identifier:void 0}){}let aD=au(["TB","LR"]),aR=aD.annotate({default:"TB"}).pipe(l.E$i(o.PyW("TB")));class a$ extends l.Xsx("FlowchartSpecLayout")({direction:aR},{identifier:void 0}){}let aj=y.accentColor,aN=aC(aj).pipe(l.E$i(o.PyW(aj))),aW=y.backgroundColor,aJ=aC(aW).pipe(l.E$i(o.PyW(aW)));class aK extends l.Xsx("FlowchartSpecStyle")({accentColor:aN,backgroundColor:aJ},{identifier:void 0}){}let aQ=[],a1=l.O31(aG).pipe(l.fXn).annotate({default:aQ}).pipe(l.E$i(o.PyW(aQ))),a0={direction:"TB"},a2=a$.annotate({default:a0}).pipe(l.E$i(o.PyW(a0)),l.usV({[aa]:a0})),a3={accentColor:y.accentColor,backgroundColor:y.backgroundColor},a5=aK.annotate({default:a3}).pipe(l.E$i(o.PyW(a3)),l.usV({[aa]:a3}));class a4 extends l.Xsx("FlowchartSpec")({id:ad(aw),title:ax,nodes:ag(ac(aT)),edges:a1,groups:ad(l.O31(aZ).pipe(l.fXn)),layout:a2,style:a5},{identifier:void 0}){}class a6 extends l.Xsx("SequenceParticipantSpec")({id:ax,label:ax,kind:ad(aw),icon:ad(aY)},{identifier:void 0}){}class a7 extends l.Xsx("SequenceMessageSpec")({id:ad(aw),source:ax,target:ax,label:ax,type:ad(au(eL)),style:ad(au(eB))},{identifier:void 0}){}let a8=[],a9=l.O31(a7).pipe(l.fXn).annotate({default:a8}).pipe(l.E$i(o.PyW(a8)));class se extends l.Xsx("SequenceDiagramSpec")({id:ad(aw),title:ax,participants:ag(ac(a6)),messages:a9,style:a5},{identifier:void 0}){}class st extends l.Xsx("TimelineEventSpec")({id:ax,label:ax,date:ad(aw),end:ad(aw),order:ad(ab),kind:ad(au(R)),lane:ad(aw),description:ad(aw)},{identifier:void 0}){}class sa extends l.Xsx("TimelineSpec")({id:ad(aw),title:ax,events:ag(ac(st)),lanes:ad(l.O31(aw).pipe(l.fXn)),today:ad(aw),style:a5},{identifier:void 0}){}class ss extends l.Xsx("ChartSeriesSpec")({name:ad(aw),values:ag(l.O31(ab).pipe(l.fXn))},{identifier:void 0}){}class sl extends l.Xsx("ChartSpec")({id:ad(aw),title:ax,kind:au(F),categories:ag(ac(aw)),series:ag(ac(ss)),unit:ad(aw),categoryAxisTitle:ad(aw),valueAxisTitle:ad(aw),stacked:ad(l.v8c),donut:ad(l.v8c),orientation:ad(au(I)),style:a5},{identifier:void 0}){}class si extends l.Xsx("StateMachineStateSpec")({id:ax,label:ad(aw),kind:ad(au(eT)),parent:ad(aw),initial:ad(aw)},{identifier:void 0}){}class so extends l.Xsx("StateMachineTransitionSpec")({id:ad(aw),source:ax,target:ax,event:ad(aw),guard:ad(aw),action:ad(aw)},{identifier:void 0}){}class sr extends l.Xsx("StateMachineSpecLayout")({direction:au(eZ)},{identifier:void 0}){}let sn=[],sc=l.O31(so).pipe(l.fXn).annotate({default:sn}).pipe(l.E$i(o.PyW(sn)));class sd extends l.Xsx("StateMachineSpec")({id:ad(aw),title:ax,initial:ax,states:ag(ac(si)),transitions:sc,layout:ad(sr),style:a5},{identifier:void 0}){}let sp=ad(ac(aB)),sh=ad(l.O31(aA).pipe(l.fXn)),sg=ad(l.wNn.check(l.MIs(),l.OWK(0,{message:"Too small: expected number to be >=0"}),l.biW(10,{message:"Too big: expected number to be <=10"})));class su extends l.Xsx("BuildFlowchartOptions")({artifactFormats:sp,inlineArtifacts:sh,minQualityScore:sg},{identifier:void 0}){}ad(su);class sf extends l.Xsx("BuildFlowchartRequest")({requestId:ad(aw),spec:ah(a4),options:ad(su)},{identifier:void 0}){}let sm=a4.mapFields(({id:e,title:t,nodes:a,edges:s,layout:l})=>({id:e,title:t,nodes:a,edges:s,layout:l})),sv=l._kM({requestId:ad(aw),spec:ah(sm)}),sy=l.rcy(sv,{leafHook:t8,parseOptions:{errors:"all"}}),sw=Object.assign(sy,{"~standard":{...sy["~standard"],jsonSchema:{input:()=>ar(sv),output:()=>ar(sv)}}}),sx=Object.assign(sf,{omit:e=>sw});class sb extends l.Xsx("BuildSequenceDiagramRequest")({requestId:ad(aw),spec:ah(se),options:ad(su)},{identifier:void 0}){}l._kM({requestId:ad(aw),spec:ah(se.mapFields(({id:e,title:t,participants:a,messages:s})=>({id:e,title:t,participants:a,messages:s})))});class sk extends l.Xsx("BuildTimelineRequest")({requestId:ad(aw),spec:ah(sa),options:ad(su)},{identifier:void 0}){}l._kM({requestId:ad(aw),spec:ah(sa.mapFields(({id:e,title:t,events:a,lanes:s,today:l})=>({id:e,title:t,events:a,lanes:s,today:l})))});class sM extends l.Xsx("BuildChartRequest")({requestId:ad(aw),spec:ah(sl),options:ad(su)},{identifier:void 0}){}let sC=sl.mapFields(({style:e,...t})=>t);l._kM({requestId:ad(aw),spec:ah(sC)});class sz extends l.Xsx("BuildStateMachineRequest")({requestId:ad(aw),spec:ah(sd),options:ad(su)},{identifier:void 0}){}l._kM({requestId:ad(aw),spec:ah(sd.mapFields(({id:e,title:t,initial:a,states:s,transitions:l,layout:i})=>({id:e,title:t,initial:a,states:s,transitions:l,layout:i})))});let s_=l.QfV.check(l.tJb(1,{message:"Too small: expected string to have >=1 characters"}),l.HNH(function(e){let t=t4(e);return t.length>0&&!/^(?:""|''|``)$/.test(t)},{message:"Must contain semantic text after normalization."})),sL=ah(l.DYE(()=>sB).annotate({identifier:"__schema0"})),sB=l._kM({label:ap(s_),children:l.Qrq(l.O31(sL).pipe(l.fXn))});class sA extends l.Xsx("MindmapSpecLayout")({direction:au(["LR","RL"]).annotate({default:"LR"}).pipe(l.E$i(o.PyW("LR")))},{identifier:void 0}){}let sS={direction:"LR"},sP=sA.annotate({default:sS}).pipe(l.E$i(o.PyW(sS)),l.usV({[aa]:sS})),sV=l._kM({id:ad(aw),title:ap(s_),root:sL,layout:sP,style:a5});class sH extends l.Xsx("MindmapSpec")(sV,{identifier:void 0}){}let sq=l._kM({requestId:ad(aw),spec:ah(sV),options:ad(su)});l.Xsx("BuildMindmapRequest")(sq,{identifier:void 0});class sF extends l.Xsx("ScenePoint")({x:ab.pipe(l.Wa3),y:ab.pipe(l.Wa3)},{identifier:void 0}){}let sI={frameId:ad(aw).pipe(l.Wa3),groupIds:ad(l.O31(aw).pipe(l.fXn).annotate({maxItems:ts.maxGroupsPerElement})).pipe(l.Wa3),layerId:ad(aw).pipe(l.Wa3),locked:ad(l.v8c).pipe(l.Wa3),opacity:ad(l.wNn.check(l.MIs(),l.Bt9({minimum:0,maximum:100}))).pipe(l.Wa3),zIndex:ad(l.Aiz).pipe(l.Wa3)},sE={fillColor:ad(az).pipe(l.Wa3),fillStyle:ad(au(["cross-hatch","hachure","solid"])).pipe(l.Wa3),roughness:ad(au([0,1,2])).pipe(l.Wa3),strokeColor:ad(az).pipe(l.Wa3),strokeStyle:ad(au(["dashed","dotted","solid"])).pipe(l.Wa3),strokeWidth:ad(au([1,2,4])).pipe(l.Wa3)},sO=l.T9y(au(["arrow","bar","circle","diamond","triangle"])),sU=l.O31(sF).pipe(l.fXn).check(l.tJb(2,{message:"Too small: expected array to have >=2 items"}),l.NYj(ts.maxPointsPerElement,{message:`Too big: expected array to have <=${ts.maxPointsPerElement} items`}));class sX extends l.Xsx("CanvasNodeIcon")({slug:aX.pipe(l.Wa3),size:l.wNn.check(l.MIs(),l.Bt9({minimum:tl.minSize,maximum:tl.maxSize},{message:`Expected a number between ${tl.minSize} and ${tl.maxSize}`})).pipe(l.Wa3)},{identifier:void 0}){}class sY extends l.Xsx("CanvasIconAsset")({name:l.QfV,svg:l.QfV},{identifier:void 0}){}class sT extends l.Xsx("NodeSceneElement")({...sI,...sE,type:af("node"),id:ax,nodeId:ax,kind:ad(aw),icon:ad(sX).pipe(l.Wa3),rendererRole:ad(au(ti)),shape:au(["rectangle","ellipse","diamond","circle","polygon"]).pipe(l.Wa3),points:ad(sU).pipe(l.Wa3),textColor:ad(az).pipe(l.Wa3),x:ab.pipe(l.Wa3),y:ab.pipe(l.Wa3),width:ak.pipe(l.Wa3),height:ak.pipe(l.Wa3),label:ax.pipe(l.Wa3)},{identifier:void 0}){}class sZ extends l.Xsx("TextSceneElement")({...sI,type:af("text"),id:ax,containerId:ad(aw),textColor:ad(az).pipe(l.Wa3),x:ab.pipe(l.Wa3),y:ab.pipe(l.Wa3),text:ax.pipe(l.Wa3),fontSize:ak,fontFamily:ad(au(["hand","mono","sans"])),maxWidth:ad(ak),textAlign:ad(au(["center","left","right"])),verticalAlign:ad(au(["bottom","middle","top"]))},{identifier:void 0}){}class sG extends l.Xsx("ArrowSceneElement")({...sI,...sE,type:af("arrow"),id:ax,edgeId:ax,sourceNodeId:ax,targetNodeId:ax.pipe(l.Wa3),startArrowhead:ad(sO).pipe(l.Wa3),endArrowhead:ad(sO).pipe(l.Wa3),textColor:ad(az).pipe(l.Wa3),points:ag(sU).pipe(l.Wa3),label:ad(aw).pipe(l.Wa3)},{identifier:void 0}){}class sD extends l.Xsx("CanvasLineBinding")({elementId:ax,focus:ad(ab),gap:ad(ab)},{identifier:void 0}){}class sR extends l.Xsx("LineSceneElement")({...sI,...sE,type:af("line"),id:ax,points:ag(sU).pipe(l.Wa3),startBinding:ad(sD).pipe(l.Wa3),endBinding:ad(sD).pipe(l.Wa3),startArrowhead:ad(sO).pipe(l.Wa3),endArrowhead:ad(sO).pipe(l.Wa3),label:ad(aw).pipe(l.Wa3),textColor:ad(az).pipe(l.Wa3)},{identifier:void 0}){}class s$ extends l.Xsx("FrameSceneElement")({...sI,...sE,type:af("frame"),id:ax,nodeId:ad(aw),name:ad(aw).pipe(l.Wa3),x:ab.pipe(l.Wa3),y:ab.pipe(l.Wa3),width:ak.pipe(l.Wa3),height:ak.pipe(l.Wa3)},{identifier:void 0}){}class sj extends l.Xsx("CanvasLayer")({id:ax,name:ad(aw),locked:ad(l.v8c),visible:ad(l.v8c)},{identifier:void 0}){}let sN=ag(ac(aw));class sW extends l.Xsx("CanvasFlowLayout")({type:au(["row","column","stack"]),ids:sN,x:ad(ab),y:ad(ab),gap:ad(ab)},{identifier:void 0}){}class sJ extends l.Xsx("CanvasGridLayout")({type:af("grid"),ids:sN,columns:l.Aiz.check(l.OWK(1,{message:"Too small: expected number to be >=1"})),x:ad(ab),y:ad(ab),columnGap:ad(ab),rowGap:ad(ab)},{identifier:void 0}){}class sK extends l.Xsx("CanvasAlignLayout")({type:af("align"),ids:sN,axis:au(["x","y"]),alignment:au(["center","end","start"])},{identifier:void 0}){}class sQ extends l.Xsx("CanvasDistributeLayout")({type:af("distribute"),ids:sN,axis:au(["x","y"]),gap:ad(ab)},{identifier:void 0}){}let s1=l.gPz([sT,sZ,sG,sR,s$],{mode:"oneOf"}).annotate({[as]:!0}),s0=l.gPz([sW,sJ,sK,sQ],{mode:"oneOf"}),s2=l.O31(sj).pipe(l.fXn).annotate({default:[],maxItems:ts.maxLayers}).pipe(l.E$i(o.PyW([]))),s3=l.O31(s0).pipe(l.fXn).annotate({default:[],maxItems:ts.maxLayouts}).pipe(l.E$i(o.PyW([]))),s5=l.O31(aw).pipe(l.fXn).annotate({default:[],maxItems:ts.maxZOrderEntries}).pipe(l.E$i(o.PyW([])));class s4 extends l.Xsx("CanvasSpec")({kind:af("canvas"),version:am(1),diagramId:ax,title:ax,width:ak.pipe(l.Wa3),height:ak.pipe(l.Wa3),accentColor:az.pipe(l.Wa3),backgroundColor:az.pipe(l.Wa3),elements:ag(l.O31(s1).pipe(l.fXn).annotate({maxItems:ts.maxElements})),icons:ad(l.mSG(l.QfV,sY)).pipe(l.Wa3),layers:s2,layouts:s3,zOrder:s5},{identifier:void 0}){}let s6=s4;class s7 extends l.Xsx("CreateCanvasRequest")({requestId:ad(aw),spec:ah(s4),options:ad(su)},{identifier:void 0}){}let s8=l.mSG(l.QfV,l.$r1).check(l.HNH(e=>"string"==typeof e.id&&e.id.length>0&&"string"==typeof e.type&&e.type.length>0,{message:"Invalid input"}));class s9 extends l.Xsx("ExcalidrawScene")({appState:l.mSG(l.QfV,l.$r1),elements:l.O31(s8).pipe(l.fXn)},{identifier:void 0}){}class le extends s9.extend("ExcalidrawFile")({files:l.mSG(l.QfV,l.$r1),source:ax,type:af("excalidraw"),version:am(2)},{identifier:void 0}){}let lt=le;class la extends l.Xsx("GetArtifactRequest")({artifactId:ax,format:ad(aB),inline:ad(l.v8c)},{identifier:void 0}){}class ls extends l.Xsx("DiagramSelector")({ids:ad(l.O31(aw).pipe(l.fXn)),nodeIds:ad(l.O31(aw).pipe(l.fXn)),edgeIds:ad(l.O31(aw).pipe(l.fXn)),kinds:ad(l.O31(aO).pipe(l.fXn)),labels:ad(l.O31(aw).pipe(l.fXn)),scope:ad(au(["all","nodes","edges"]))},{identifier:void 0}){}class ll extends l.Xsx("DiagramStylePatch")({strokeColor:ad(az),fillColor:ad(az),textColor:ad(az),backgroundColor:ad(az)},{identifier:void 0}){}let li=["rectangle","diamond","ellipse","circle","polygon"],lo=Object.assign(au(li),{options:li});class lr extends l.Xsx("SetDefaultStyleOperation")({op:af("setDefaultStyle"),style:ah(ll)},{identifier:void 0}){}class ln extends l.Xsx("SetStyleOperation")({op:af("setStyle"),selector:ah(ls),style:ah(ll)},{identifier:void 0}){}class lc extends l.Xsx("SetShapeOperation")({op:af("setShape"),selector:ah(ls),shape:lo},{identifier:void 0}){}class ld extends l.Xsx("TranslateOperation")({op:af("translate"),selector:ah(ls),dx:ab,dy:ab},{identifier:void 0}){}class lp extends l.Xsx("ReplaceTextOperation")({op:af("replaceText"),selector:ah(ls),text:ax},{identifier:void 0}){}class lh extends l.Xsx("RerouteEdgesOperation")({op:af("rerouteEdges"),selector:ad(ls)},{identifier:void 0}){}let lg=ag(ac(aw));class lu extends l.Xsx("InsertElementsOperation")({op:af("insert"),elements:ag(ac(s1)),beforeId:ad(aw),afterId:ad(aw)},{identifier:void 0}){}class lf extends l.Xsx("RemoveElementsOperation")({op:af("remove"),selector:ah(ls)},{identifier:void 0}){}class lm extends l.Xsx("ReplaceElementOperation")({op:af("replace"),id:ax,element:ah(s1)},{identifier:void 0}){}class lv extends l.Xsx("ReorderElementsOperation")({op:af("reorder"),ids:lg,beforeId:ad(aw),afterId:ad(aw)},{identifier:void 0}){}class ly extends l.Xsx("GroupElementsOperation")({op:af("group"),ids:lg,groupId:ax},{identifier:void 0}){}class lw extends l.Xsx("UngroupElementsOperation")({op:af("ungroup"),ids:lg,groupId:ad(aw)},{identifier:void 0}){}let lx=l.gPz([lr,ln,lc,ld,lp,lh,lu,lf,lm,lv,ly,lw],{mode:"oneOf"}).annotate({[as]:!0,[al]:"op",message:`Invalid discriminator value. Expected ${aU.map(e=>`'${e}'`).join(" | ")}`});class lb extends l.Xsx("ArtifactPatchSource")({artifactId:ax,format:ad(af("scene"))},{identifier:void 0}){}class lk extends l.Xsx("InlineScenePatchSource")({scene:ah(s4)},{identifier:void 0}){}let lM=l.gPz([lb,lk]).annotate({message:"Invalid input"});class lC extends l.Xsx("ApplyDiagramPatchOptions")({artifactFormats:sp,inlineArtifacts:sh,preserveConnectivity:ad(l.v8c)},{identifier:void 0}){}ad(lC);class lz extends l.Xsx("ApplyDiagramPatchRequest")({requestId:ad(aw),source:lM.annotateKey({messageMissingKey:"Invalid input"}),operations:ag(ac(lx)),options:ad(lC),intent:ad(aw)},{identifier:void 0}){}class l_ extends l.Xsx("NormalizedMindmapTopic")({id:aw,label:aw,children:l.O31(l.DYE(()=>l_)).pipe(l.fXn)},{identifier:void 0}){}let lL=l._kM({id:aw,title:aw,nodes:l.O31(aT).pipe(l.fXn),edges:l.O31(aG.mapFields(e=>({...e,id:aw}))).pipe(l.fXn),groups:l.Qrq(l.O31(aZ).pipe(l.fXn)),layout:l._kM({direction:aD}),style:l._kM({accentColor:az,backgroundColor:az})}),lB=l._kM({id:aw,title:aw,root:l_,layout:l._kM({direction:au(["LR","RL"])}),style:l._kM({accentColor:az,backgroundColor:az})}),lA=l._kM({id:aw,title:aw,participants:l.O31(a6).pipe(l.fXn),messages:l.O31(a7.mapFields(e=>({...e,id:aw}))).pipe(l.fXn),style:l._kM({accentColor:az,backgroundColor:az})}),lS=l._kM({id:aw,title:aw,events:l.O31(st).pipe(l.fXn),lanes:ad(l.O31(aw).pipe(l.fXn)),today:ad(aw),style:l._kM({accentColor:az,backgroundColor:az})}),lP=l._kM({id:aw,title:aw,initial:aw,states:l.O31(si).pipe(l.fXn),transitions:l.O31(so.mapFields(e=>({...e,id:aw}))).pipe(l.fXn),layout:ad(sr),style:l._kM({accentColor:az,backgroundColor:az})}),lV=sl.mapFields(e=>({...e,id:aw,title:aw,style:l._kM({accentColor:az,backgroundColor:az})})),lH=l._kM({code:l.QfV,passed:l.v8c,severity:au(["error","warning"]),message:l.QfV,refs:l.O31(aF).pipe(l.fXn)}),lq=l._kM({accepted:l.v8c,score:l.wNn,threshold:l.wNn,summary:l._kM({nodeCount:l.wNn,edgeCount:l.wNn}),checks:l.O31(lH).pipe(l.fXn)}),lF=l._kM({format:aB,mimeType:l.QfV,url:ad(l.QfV),expiresAt:ad(l.QfV),inline:ad(l.$r1),sizeBytes:ad(l.wNn)}),lI=l._kM({artifactId:l.QfV,diagramId:l.QfV,formats:l.O31(lF).pipe(l.fXn),provenance:ad(aS),preview:ad(lF)}),lE=l._kM({artifactId:ad(l.QfV),diagramId:ad(l.QfV),formats:ad(l.O31(lF).pipe(l.fXn))});class lO extends l.Xsx("BuildFlowchartAccepted")({ok:av(!0),status:af("accepted"),buildId:l.QfV,requestId:ad(l.QfV),normalizedSpec:lL,quality:lq,artifact:lI,issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}class lU extends l.Xsx("BuildFlowchartRejected")({ok:av(!1),status:au(["invalid_input","invalid_flowchart","quality_failed","render_failed","export_failed","storage_failed"]),buildId:ad(l.QfV),requestId:ad(l.QfV),normalizedSpec:ad(lL),quality:ad(lq),partial:ad(lE),issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}l.gPz([lO,lU]);class lX extends l.Xsx("BuildMindmapAccepted")({ok:av(!0),status:af("accepted"),buildId:l.QfV,requestId:ad(l.QfV),normalizedSpec:lB,quality:lq,artifact:lI,issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}class lY extends l.Xsx("BuildMindmapRejected")({ok:av(!1),status:au(["invalid_input","invalid_mindmap","quality_failed","render_failed","export_failed","storage_failed"]),buildId:ad(l.QfV),requestId:ad(l.QfV),normalizedSpec:ad(lB),quality:ad(lq),partial:ad(lE),issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}l.gPz([lX,lY]);class lT extends l.Xsx("BuildSequenceDiagramAccepted")({ok:av(!0),status:af("accepted"),buildId:l.QfV,requestId:ad(l.QfV),normalizedSpec:lA,quality:lq,artifact:lI,issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}class lZ extends l.Xsx("BuildSequenceDiagramRejected")({ok:av(!1),status:au(["invalid_input","invalid_sequence","quality_failed","render_failed","export_failed","storage_failed"]),buildId:ad(l.QfV),requestId:ad(l.QfV),normalizedSpec:ad(lA),quality:ad(lq),partial:ad(lE),issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}l.gPz([lT,lZ]);class lG extends l.Xsx("BuildTimelineAccepted")({ok:av(!0),status:af("accepted"),buildId:l.QfV,requestId:ad(l.QfV),normalizedSpec:lS,quality:lq,artifact:lI,issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}class lD extends l.Xsx("BuildTimelineRejected")({ok:av(!1),status:au(["invalid_input","invalid_timeline","quality_failed","render_failed","export_failed","storage_failed"]),buildId:ad(l.QfV),requestId:ad(l.QfV),normalizedSpec:ad(lS),quality:ad(lq),partial:ad(lE),issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}l.gPz([lG,lD]);class lR extends l.Xsx("BuildChartAccepted")({ok:av(!0),status:af("accepted"),buildId:l.QfV,requestId:ad(l.QfV),normalizedSpec:lV,quality:lq,artifact:lI,issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}class l$ extends l.Xsx("BuildChartRejected")({ok:av(!1),status:au(["invalid_input","invalid_chart","quality_failed","render_failed","export_failed","storage_failed"]),buildId:ad(l.QfV),requestId:ad(l.QfV),normalizedSpec:ad(lV),quality:ad(lq),partial:ad(lE),issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}l.gPz([lR,l$]);class lj extends l.Xsx("BuildStateMachineAccepted")({ok:av(!0),status:af("accepted"),buildId:l.QfV,requestId:ad(l.QfV),normalizedSpec:lP,quality:lq,artifact:lI,issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}class lN extends l.Xsx("BuildStateMachineRejected")({ok:av(!1),status:au(["invalid_input","invalid_state_machine","quality_failed","render_failed","export_failed","storage_failed"]),buildId:ad(l.QfV),requestId:ad(l.QfV),normalizedSpec:ad(lP),quality:ad(lq),partial:ad(lE),issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}l.gPz([lj,lN]);class lW extends l.Xsx("GetArtifactAccepted")({ok:av(!0),artifactId:l.QfV,diagramId:l.QfV,format:aB,mimeType:l.QfV,url:ad(l.QfV),expiresAt:ad(l.QfV),inline:ad(l.$r1),sizeBytes:ad(l.wNn),provenance:ad(aS)},{identifier:void 0}){}class lJ extends l.Xsx("GetArtifactRejected")({ok:av(!1),status:au(["invalid_input","not_found","format_unavailable","expired","storage_failed"]),issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}l.gPz([lW,lJ]);class lK extends l.Xsx("ApplyDiagramPatchAccepted")({ok:av(!0),status:af("accepted"),patchId:l.QfV,requestId:ad(l.QfV),sourceArtifactId:ad(l.QfV),artifact:lI,issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}class lQ extends l.Xsx("ApplyDiagramPatchRejected")({ok:av(!1),status:au(["invalid_input","source_unavailable","target_not_found","unsupported_operation","connectivity_changed","render_failed","export_failed","storage_failed"]),patchId:ad(l.QfV),requestId:ad(l.QfV),sourceArtifactId:ad(l.QfV),partial:ad(lE),issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}l.gPz([lK,lQ]);class l1 extends l.Xsx("CreateCanvasAccepted")({ok:av(!0),status:af("accepted"),buildId:l.QfV,requestId:ad(l.QfV),normalizedSpec:s4,artifact:lI,issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}class l0 extends l.Xsx("CreateCanvasRejected")({ok:av(!1),status:au(["invalid_input","invalid_canvas","limit_exceeded","render_failed","export_failed","storage_failed"]),buildId:ad(l.QfV),requestId:ad(l.QfV),normalizedSpec:ad(s4),partial:ad(lE),issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}let l2=l.gPz([l1,l0]),l3=120,l5=1,l4=25;class l6 extends l.Xsx("SearchIconsRequest")({q:ap(an().check(l.NYj(l3,{message:`Too big: expected string to have <=${l3} characters`}))),limit:ad(l.Aiz.check(l.Bt9({minimum:l5,maximum:l4},{message:`Expected an integer between ${l5} and ${l4}`})))},{identifier:void 0}){}class l7 extends l.Xsx("SearchIconsMatch")({slug:l.QfV,name:l.QfV,collection:l.QfV},{identifier:void 0}){}class l8 extends l.Xsx("SearchIconsAccepted")({ok:av(!0),status:af("accepted"),query:l.QfV,icons:l.O31(l7).pipe(l.fXn),issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}class l9 extends l.Xsx("SearchIconsRejected")({ok:av(!1),status:au(["invalid_input"]),issues:l.O31(aI).pipe(l.fXn)},{identifier:void 0}){}l.gPz([l8,l9]);let ie=l.xCb(["read","readManifest","write"]);class it extends l.rNF()("CodeModeArtifactStorageError",{cause:l.kld(),message:l.QfV,operation:ie}){}class ia extends i.kl()("@sketchi/diagram-agent/CodeModeArtifactStorage"){}let is={excalidraw:"application/vnd.excalidraw+json",png:"image/png",scene:"application/vnd.sketchi.scene+json"};function il(e){return"excalidraw"===e||"scene"===e}function ii(e){return{format:e.format,mimeType:e.mimeType,sizeBytes:e.sizeBytes}}function io(e){return new TextEncoder().encode(JSON.stringify(e)).length}let ir=n.QZ(ia)(o.Q56(o.OH5(function(){let e=new Map,t=new Map;return{close:o.OH5(()=>{t.clear(),e.clear()}),storage:{read:o.fn("codeMode.artifacts.memory.read")(function*(e,a){return yield*o.OH5(()=>{let s=t.get(`${e}:${a}`);return s?{...s,data:structuredClone(s.data)}:null})}),readManifest:o.fn("codeMode.artifacts.memory.readManifest")(function*(t){return yield*o.OH5(()=>{let a=e.get(t);return a?structuredClone(a):null})}),write:o.fn("codeMode.artifacts.memory.write")(function*(a){var s;let l=yield*r.Ru;return yield*o.SvU({try:()=>{var s;let i,o=a.formats.map(ii),r=a.provenance?structuredClone(a.provenance):void 0,n={artifactId:a.artifactId,diagramId:a.diagramId,formats:o,...r?{provenance:r}:{},createdAt:new Date(l).toISOString()};for(let s of(e.set(a.artifactId,n),a.formats))t.set(`${a.artifactId}:${s.format}`,{...s,data:structuredClone(s.data)});let c=a.formats.map(e=>{var t;return t=a.inlineFormats,{format:e.format,mimeType:e.mimeType,...il(e.format)&&t.includes(e.format)?{inline:e.data}:{},sizeBytes:e.sizeBytes}});return i=(s={artifactId:a.artifactId,diagramId:a.diagramId,formats:c,...a.provenance?{provenance:structuredClone(a.provenance)}:{}}).formats.find(e=>"scene"===e.format),{artifactId:s.artifactId,diagramId:s.diagramId,formats:s.formats,...s.provenance?{provenance:s.provenance}:{},...i?{preview:i}:{}}},catch:(s="write",e=>{var t;return it.make({cause:e,message:(t="Artifact storage failed.",e instanceof Error?e.message:t),operation:s})})})})}}}),e=>e.close).pipe(o.TjK(e=>e.storage)));function ic(e,t="storage_write_failed"){return{code:t,severity:"error",stage:"storage",message:e,hint:"Retry the request; if it keeps failing, inspect the artifact store binding."}}let id="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",ip=id.slice(10),ih=new Map;function ig(e){let t=ih.get(e);if(void 0===t){t=new Uint8Array(256);for(let a=0;a<e.length;a++)t[e.charCodeAt(a)]=a;ih.set(e,t)}return t}function iu(e,t,a,s){let l=a[0];if(null!=t&&e>=t)throw Error(e+" >= "+t);if(e.slice(-1)===l||t&&t.slice(-1)===l)throw Error("trailing zero");if(t){let i=0;for(;(e[i]||l)===t[i];)i++;if(i>0)return t.slice(0,i)+iu(e.slice(i),t.slice(i),a,s)}let i=e?s[e.charCodeAt(0)]:0,o=null!=t?s[t.charCodeAt(0)]:a.length;return o-i>1?a[Math.round(.5*(i+o))]:t&&t.length>1?t.slice(0,1):a[i]+iu(e.slice(1),null,a,s)}function im(e,t,a){if(e.length!==iv(e[0],t,a))throw Error("invalid integer part of order key: "+e)}function iv(e,t,a){let s=a[e.charCodeAt(0)];if(t[s]===e){let e=t.length/2;return s<e?e-s+1:s-e+2}throw Error("invalid order key head: "+e)}function iy(e,t,a){let s=iv(e[0],t,a);if(s>e.length)throw Error("invalid order key: "+e);return e.slice(0,s)}function iw(e,t,a,s){if(ik(e,t,a))throw Error("invalid order key: "+e);let l=iy(e,a,s);if(e.slice(l.length).slice(-1)===t[0])throw Error("invalid order key: "+e)}function ix(e,t,a,s,l){im(e,s,l);let i=e[0],o=t[0],r="";for(let s=e.length-1;s>=1;s--){let l=a[e.charCodeAt(s)]+1;if(l!==t.length)return i+e.slice(1,s)+t[l]+r;r=o+r}let n=l[i.charCodeAt(0)];if(n===s.length-1)return null;let c=s[n+1],d=iv(c,s,l)-iv(i,s,l);return c+(d>0?r+o:d<0?r.slice(1):r)}let ib=new Map;function ik(e,t,a){let s=ib.get(a);void 0===s&&(s=new Map,ib.set(a,s));let l=t.charCodeAt(0),i=s.get(l);return void 0===i&&(i=a[0]+t[0].repeat(a.length/2),s.set(l,i)),e===i}function iM(e){for(let t=1;t<e.length;t++)if(e.charCodeAt(t-1)>=e.charCodeAt(t))return!1;return!0}function iC(e){for(let t=0;t<e.length;t++)if(e.charCodeAt(t)>255)return!1;return!0}let iz=new Set,i_=new Set,iL=new Set(["rectangle","ellipse","diamond"]),iB=v.ink;function iA(e){return"number"==typeof e&&Number.isFinite(e)?e:null}function iS(e){if(!Array.isArray(e)||e.length<2)return null;let t=iA(e[0]),a=iA(e[1]);return null===t||null===a?null:[t,a]}function iP(e){let t=iA(e.x),a=iA(e.y),s=iA(e.width),l=iA(e.height);return null===t||null===a||null===s||null===l?null:{x:t,y:a,width:s,height:l}}function iV(e){return 1e-4>Math.abs(e-.5)?.5001:e}function iH(e,t){let a=iP(e);return a&&0!==a.width&&0!==a.height?[iV((t.x-a.x)/a.width),iV((t.y-a.y)/a.height)]:null}function iq(e,t){return{elementId:e?.id??"",focus:0,gap:0,fixedPoint:e?iH(e,t):null}}function iF(e,t){let a=tV(e,"seed");return{id:e,angle:0,fillStyle:t&&"fillStyle"in t?t.fillStyle??"solid":"solid",frameId:t?.frameId??null,groupIds:[...t?.groupIds??[]],index:null,isDeleted:!1,link:null,locked:t?.locked??!1,opacity:t?.opacity??100,roughness:t&&"roughness"in t?t.roughness??1:1,seed:a,strokeStyle:t&&"strokeStyle"in t?t.strokeStyle??"solid":"solid",strokeWidth:t&&"strokeWidth"in t?t.strokeWidth??2:2,updated:1,version:1,versionNonce:a+1}}function iI(e){var t,a;let s,l=e.wrap?ta(e.text,e.maxWidth,e.fontSize):e.text,i=e.wrap?te(l,e.fontSize,e.maxWidth):e9(l,e.fontSize,e.maxWidth),o=(t=e.fontSize,Math.ceil(l.split("\n").length*t*1.35)),r=e.element?.verticalAlign;return{...iF(e.id,e.element),...void 0===e.locked?{}:{locked:e.locked},type:"text",x:e.x-i/2,y:e.container&&("bottom"===r||"top"===r)?(a=e.container,s=a.y+th(a).y,"top"===r?s:s+tg(a).height-o):e.y-o/2,width:i,height:o,backgroundColor:"transparent",boundElements:null,containerId:e.containerId??null,fontFamily:e.element?.fontFamily==="mono"?3:e.element?.fontFamily==="sans"?2:5,fontSize:e.fontSize,lineHeight:1.35,originalText:e.text,roundness:null,strokeColor:e.textColor??iB,text:l,textAlign:e.element?.textAlign??"center",verticalAlign:e.element?.verticalAlign??"middle",autoResize:!(e.wrap&&!e.containerId)}}function iE(e){return`${e.id}:logo`}function iO(e){return e.points[e.points.length-1]??e.points[0]}function iU(e,t,a){if(!e)return null;let s=t.get(e.elementId);return s?{elementId:e.elementId,focus:e.focus??0,gap:e.gap??0,fixedPoint:iH(s,a)}:null}function iX(e){return"node"===e.type}function iY(e){return"text"===e.type}function iT(e){return"arrow"===e.type}function iZ(e){return"line"===e.type}function iG(e){return"frame"===e.type}function iD(e,t){let a=e[t];if(!(a&&"object"==typeof a))return null;let s=a.elementId;return"string"==typeof s?s:null}function iR(e){let t=iA(e.x)??0,a=iA(e.y)??0,s=iD(e,"startBinding"),l=iD(e,"endBinding"),i=Array.isArray(e.points)?e.points.map(iS).filter(e=>null!==e).map(([e,s])=>({x:t+e,y:a+s})):[];return tL(i).map(t=>({...t,arrowId:e.id,startBindingId:s,endBindingId:l,startCoordinate:"horizontal"===t.orientation?i[t.segmentIndex].x:i[t.segmentIndex].y,endCoordinate:"horizontal"===t.orientation?i[t.segmentIndex+1].x:i[t.segmentIndex+1].y}))}function i$(e){if(iL.has(e.type)||"frame"===e.type)return!0;let t=e.customData;return"line"===e.type&&null!==t&&"object"==typeof t&&"polygon"===t.sketchiShape}function ij(e,t,a){return e>=t-.01&&e<=a+.01}function iN(e,t){return .01>=Math.abs(e-t)}let iW=[1,2,5];function iJ(e){return Math.max(0,-Math.floor(Math.log10(e)+1e-9))}function iK(e,t){let a=Number(e.toFixed(t));return Object.is(a,-0)?0:a}function iQ(e,t,a=5,s=8){let l,i=Math.min(e,t),o=Math.max(e,t);i===o&&(0===i?o=1:i>0?i=0:o=0);let r=Math.floor(Math.log10((o-i)/Math.max(1,a)));for(let e=r-1;e<=r+1;e+=1)for(let t of iW){let r=t*10**e,n=iJ(r),c=iK(Math.floor(i/r+1e-9)*r,n),d=iK(Math.ceil(o/r-1e-9)*r,n),p=Math.round((d-c)/r);if(p<1||p>s)continue;let h=Math.abs(p-a),g=l?Math.abs(l.intervals-a):1/0;(h<g||h===g&&l&&r>l.step)&&(l={step:r,min:c,max:d,intervals:p})}if(!l)throw Error(`No tick step covers ${i}..${o}.`);let n=iJ(l.step),c=Array.from({length:l.intervals+1},(e,t)=>iK(l.min+t*l.step,n));return{min:l.min,max:l.max,step:l.step,ticks:c,decimals:n}}function i1(e,t,a){let s=t?iK(e.min-e.step,e.decimals):e.min,l=a?iK(e.max+e.step,e.decimals):e.max,i=Math.round((l-s)/e.step);return{...e,min:s,max:l,ticks:Array.from({length:i+1},(t,a)=>iK(s+a*e.step,e.decimals))}}function i0(e,t){let a=Math.min(...e),s=Math.max(...e);if(t||a<=0!=s<=0)return{low:Math.min(0,a),high:Math.max(0,s)};let l=Math.max(Math.abs(a),Math.abs(s));return s-a>l/6?{low:Math.min(0,a),high:Math.max(0,s)}:{low:a,high:s}}let i2=/^[$€£¥₹₩₽₺₪₦฿]+/u,i3=/^(?:[%‰°]|(?:[kKMBT]|bn|MM|x)(?!\p{L}))/u;function i5(e){if(!e)return{prefix:"",suffix:""};let t=i2.exec(e)?.[0]??"",a=e.slice(t.length);return t?{prefix:t,suffix:a}:{prefix:"",suffix:i3.test(a)?a:` ${a}`}}function i4(e){let[t="",a="0"]=Math.abs(e).toString().split("e");return Math.max(0,(t.split(".")[1]?.length??0)-Number(a))}let i6=new Map;function i7(e,t){let a=i6.get(t);return a||(a=new Intl.NumberFormat("en-US",{minimumFractionDigits:t,maximumFractionDigits:t}),i6.set(t,a)),a.format(e)}let i8=[{size:1e12,letter:"T"},{size:1e9,letter:"B"},{size:1e6,letter:"M"},{size:1e3,letter:"k"}];function i9(e,t,a){return`${t?"-":""}${a.prefix}${e}${a.suffix}`}function oe(e){return!/^(?:[kKMBT]|bn|MM)/u.test(e.suffix)}function ot(e,t,a=i4(e)){let s=e<0,l=Math.abs(e);if(l>=1e6&&0===a&&oe(t)){let e=i8.find(e=>l>=e.size),a=Number((l/e.size).toPrecision(12));if(Number(a.toPrecision(3))===a)return i9(`${i7(a,i4(a))}${e.letter}`,s,t)}return l>0&&a>6?i9(l.toExponential(),s,t):i9(i7(l,a),s,t)}let oa="chart-mark",os=["#2a78d6","#eb6834","#1baf7a","#eda100","#e87ba4","#008300","#6250d6","#e34948"],ol=v.ink,oi="#4c4639",oo="#e6dfd2",or="#8c826f",on=3*Math.PI/180,oc=20*Math.PI/180;function od(e,t){return{text:e,width:Math.ceil(e8(e,t)),height:Math.ceil(e.split("\n").length*t*1.35)}}function op(e,t,a){return od(ta(e,Math.max(1,t),a),a)}function oh(e){return Math.round(100*e)/100}function og(e,t,a=0){return e.left<t.right+a&&t.left<e.right+a&&e.top<t.bottom+a&&t.top<e.bottom+a}function ou(e,t,a,s){let l=e.map((e,t)=>t).toSorted((t,a)=>e[t].preferred-e[a].preferred),i=Array.from({length:e.length},()=>0),o=t;for(let t of l){let a=e[t],l=Math.max(a.preferred-a.size/2,o);i[t]=l,o=l+a.size+s}let r=a;for(let t of l.toReversed()){let a=e[t],l=Math.min(i[t],r-a.size);i[t]=l,r=l-s}return i}function of(e){let t=t=>{let a=Number.parseInt(e.slice(t,t+2),16)/255;return a<=.03928?a/12.92:((a+.055)/1.055)**2.4};return .2126*t(1)+.7152*t(3)+.0722*t(5)}function om(e,t){return(Math.max(e,t)+.05)/(Math.min(e,t)+.05)}function ov(e){let t=of(e);return om(t,of(ol))>=om(t,1)?ol:"#ffffff"}function oy(e,t){let a=[...os.slice(0,e)];return t&&7===e&&(a[6]=os[7]),a}class ow{surface;elements=[];layers={back:[],middle:[],front:[]};textBoxes=[];constructor(e){this.surface=e}push(e,t){this.elements.push(e),this.layers[t].push(e.id)}zOrder(){return[...this.layers.back,...this.layers.middle,...this.layers.front]}breakRulesUnderText(e,t=2){let a=this.textBoxes.map(e=>e.box),s=new Map;for(let l of this.elements){if("line"!==l.type||!e(l.id)||2!==l.points.length)continue;let[i,o]=l.points,r=.01>Math.abs(i.y-o.y);if(!r&&Math.abs(i.x-o.x)>=.01)continue;let n=r?i.y:i.x,c=r?Math.min(i.x,o.x):Math.min(i.y,o.y),d=r?Math.max(i.x,o.x):Math.max(i.y,o.y),p=a.filter(e=>r?e.top-t<n&&n<e.bottom+t:e.left-t<n&&n<e.right+t).map(e=>r?[e.left-t,e.right+t]:[e.top-t,e.bottom+t]).filter(([e,t])=>t>c&&e<d).toSorted((e,t)=>e[0]-t[0]);if(!p.length)continue;let h=[],g=c;for(let[e,t]of p)e>g&&h.push([g,Math.min(e,d)]),g=Math.max(g,t);g<d&&h.push([g,d]),s.set(l.id,h.filter(([e,t])=>t-e>=1).map(([e,t],a)=>({...l,id:0===a?l.id:`${l.id}:${a}`,points:r?[{x:oh(e),y:n},{x:oh(t),y:n}]:[{x:n,y:oh(e)},{x:n,y:oh(t)}]})))}if(!s.size)return;let l=this.elements.flatMap(e=>s.get(e.id)??[e]);for(let e of(this.elements.splice(0,this.elements.length,...l),Object.values(this.layers))){let t=e.flatMap(e=>s.get(e)?.map(e=>e.id)??[e]);e.splice(0,e.length,...t)}}text(e,t,a,s,l,i,o="center",r={}){let n={left:a,top:s,right:a+t.width,bottom:s+t.height};return this.push({type:"text",id:e,x:oh(a+t.width/2),y:oh(s+t.height/2),text:t.text,fontSize:l,maxWidth:t.width,textAlign:o,textColor:i,...r},"front"),this.textBoxes.push({id:e,box:n}),n}line(e,t,a,s,l="back"){this.push({type:"line",id:e,points:[{x:oh(t.x),y:oh(t.y)},{x:oh(a.x),y:oh(a.y)}],roughness:0,strokeWidth:1,...s},l)}mark(e,t,a,s,l,i="middle"){this.push({type:"node",id:`node:${e}`,nodeId:e,rendererRole:oa,shape:t,x:oh(a.x),y:oh(a.y),width:oh(Math.max(a.width,.5)),height:oh(Math.max(a.height,.5)),label:s,roughness:0,fillStyle:"solid",strokeWidth:1,...l},i)}polygon(e,t,a,s,l="middle"){let i=t.map(e=>e.x),o=t.map(e=>e.y),r=Math.min(...i),n=Math.min(...o),c=t.map(e=>({x:oh(e.x-r),y:oh(e.y-n)}));this.push({type:"node",id:`node:${e}`,nodeId:e,rendererRole:oa,shape:"polygon",points:[c[0],c[1],c[2],...c.slice(3)],x:oh(r),y:oh(n),width:oh(Math.max(Math.max(...i)-r,.5)),height:oh(Math.max(Math.max(...o)-n,.5)),label:a,roughness:0,fillStyle:"solid",strokeWidth:1,...s},l)}bounds(){let e=1/0,t=1/0,a=-1/0,s=-1/0,l=(l,i,o,r)=>{e=Math.min(e,l),t=Math.min(t,i),a=Math.max(a,o),s=Math.max(s,r)};for(let e of this.elements)if("line"===e.type||"arrow"===e.type)for(let t of e.points)l(t.x,t.y,t.x,t.y);else if("text"===e.type){let t=e.maxWidth??e8(e.text,e.fontSize),a=e.text.split("\n").length*e.fontSize*1.35;l(e.x-t/2,e.y-a/2,e.x+t/2,e.y+a/2)}else l(e.x,e.y,e.x+e.width,e.y+e.height);return{left:e,top:t,right:a,bottom:s}}}function ox(e,t,a){let s=e.bounds(),l=Math.max(s.right-s.left,320),i=s.top-16;if(a.legend&&t.series.length>1){let o=t.series.map((e,t)=>{let s=op(e.name??`Series ${t+1}`,200,14),l="line"===a.legend?26:12;return{index:t,text:s,keyWidth:l,width:l+6+s.width}}),r=[[]],n=0;for(let e of o){let t=r.at(-1);t.length&&n+18+e.width>l?(r.push([e]),n=e.width):(n+=18*!!t.length+e.width,t.push(e))}let c=r.map(e=>Math.max(...e.map(e=>e.text.height))),d=i-c.reduce((e,t)=>e+t,0)-(r.length-1)*6;i=d-12,r.forEach((t,l)=>{let i=c[l],o=d+i/2,r=s.left;for(let s of t){let t=a.colors[s.index],l={groupIds:[`chart:legend:${s.index}`]};"line"===a.legend?(e.line(`chart:legend:${s.index}:line`,{x:r,y:o},{x:r+s.keyWidth,y:o},{strokeColor:t,strokeWidth:2,...l},"middle"),ob(e,`chart:key:${s.index}`,s.index,r+s.keyWidth/2,o,t,s.text.text,l)):e.mark(`chart:key:${s.index}`,"rectangle",{x:r,y:o-6,width:12,height:12},s.text.text,{fillColor:t,strokeColor:t,...l}),e.text(`chart:legend:${s.index}:label`,s.text,r+s.keyWidth+6,o-s.text.height/2,14,ol,"left",l),r+=s.width+18}d+=i+6})}let o=1===t.series.length?t.series[0]?.name:void 0,r=e=>e?.toLowerCase().includes(o.toLowerCase())===!0;if(o&&!r(t.title)&&!r(t.valueAxisTitle)){let t=op(o,Math.max(l,360),14);e.text("chart:subtitle",t,s.left,i-t.height,14,oi,"left"),i-=t.height+6}let n=op(t.title,Math.max(l,360),20);e.text("chart:title",n,s.left,i-n.height,20,ol,"left")}function ob(e,t,a,s,l,i,o,r={}){let n={strokeColor:e.surface,strokeWidth:1,fillColor:i,...r},c=a%6;if(3===c||5===c)return e.polygon(t,3===c?[{x:s,y:l-6.5},{x:s+6.5,y:l+5.2},{x:s-6.5,y:l+5.2}]:[{x:s-6.5,y:l-5.2},{x:s+6.5,y:l-5.2},{x:s,y:l+6.5}],o,n,"front"),{left:s-6.5,top:l-6.5,right:s+6.5,bottom:l+6.5};let d=2===c?13:1===c?10:11,p={x:s-d/2,y:l-d/2,width:d,height:d};return e.mark(t,1===c?"rectangle":2===c?"diamond":"ellipse",p,o,4===c?{strokeColor:i,strokeWidth:2,fillColor:e.surface,...r}:n,"front"),{left:p.x,top:p.y,right:p.x+d,bottom:p.y+d}}function ok(e,t){return e.series[t]?.name??e.title}function oM(e,t){return{scale:e,labels:e.ticks.map(a=>od(function(e,t,a){let s=Math.max(Math.abs(t.min),Math.abs(t.max)),l=e<0,i=Math.abs(e);if(0===i)return i9("0",!1,oe(a)?a:{...a,suffix:""});if(s>=1e4&&oe(a)){let e=i8.find(e=>s>=e.size),o=Math.max(0,iJ(t.step/e.size));return i9(`${i7(i/e.size,o)}${e.letter}`,l,a)}return i9(i7(i,t.decimals),l,a)}(a,e,t),13))}}function oC(e){let t=!0===e.stacked&&e.series.length>1,a=i5(e.unit),s=Math.max(...e.series.flatMap(e=>e.values.map(i4))),l=e.categories.map((t,s)=>e.series.map(e=>{let t=e.values[s];return{value:t,text:od(ot(t,a),12)}})),i=e.categories.map((t,l)=>{let i=e.series.map(e=>e.values[l]),o=i.filter(e=>e>0).reduce((e,t)=>e+t,0),r=i.filter(e=>e<0).reduce((e,t)=>e+t,0),n=e=>({value:e,text:od(ot(Number(e.toFixed(s)),a,s),12)});return{...o>0||0===r?{up:n(o)}:{},...r<0?{down:n(r)}:{}}}),o=t?i.flatMap(e=>[e.up?.value??0,e.down?.value??0]):e.series.flatMap(e=>e.values);return{diagram:e,stacked:t,parts:a,colors:oy(e.series.length,!1),labels:l,totals:i,domain:i0(o,!0)}}function oz(e,t,a,s){let l=t;for(let t of e){let e=Math.max(l,Math.max(...t.split(/\s+/u).map(e=>od(e,14).width))+10);for(;e<s&&op(t,e-10,14).text.split("\n").length>a;)e+=4;l=Math.max(l,e)}return l}function o_(e){let t=e.stacked?1:e.diagram.series.length,a=Math.min(96,720/e.diagram.categories.length),s=1===t?Math.max(16,Math.min(44,Math.round(.6*a))):Math.max(10,Math.round(Math.min(64,.75*a)/t)),l=Math.max(...e.stacked?e.totals.flatMap(e=>[e.up?.text.width??0,e.down?.text.width??0]):e.labels.flat().map(e=>e.text.width)),i=e=>t*e+(t-1)*2;if(1===t)return{bars:t,thickness:s,band:Math.max(i(s)+20,a,l+8)};let o=Math.max(s,l+2);return{bars:t,thickness:o,band:Math.max(i(o)+16,a)}}function oL(e,t,a,s,l=5){let i=iQ(e.low,e.high,l);for(let e=0;e<2;e+=1){let e=t/(i.max-i.min),l=a(i,e),o=s(i,e);if(!l&&!o)break;i=i1(i,o,l)}return i}function oB(e,t,a){let s=Math.max(1,Math.ceil(Math.abs(a-t)/on));return Array.from({length:s+1},(l,i)=>{let o=t+(a-t)*i/s;return{x:e*Math.cos(o),y:e*Math.sin(o)}})}function oA(e,t,a){let s=Math.cos(t),l=Math.sin(t),i=Math.max(0,Math.min(a,e.x*s+e.y*l));return Math.hypot(e.x-i*s,e.y-i*l)}let oS=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],oP=(e,t=2)=>String(e).padStart(t,"0"),oV={millisecond:1,second:1e3,minute:6e4,hour:36e5,day:864e5,month:2629746e3,year:31556952e3},oH="timeline-marker",oq=6,oF="#4c4639",oI="#c0392b",oE=[{stroke:"",ink:"#6a4e5c",wash:"#efe6ec"},{stroke:"#1f44c9",ink:"#1a39a8",wash:"#e6eafb"},{stroke:"#1c7a4d",ink:"#15613c",wash:"#def0e5"},{stroke:"#9a6a1f",ink:"#7a5216",wash:"#f6e8cf"}];function oO(e,t,a,s){let l=function(e,t){let a=e=>e.split("\n").length,s=ta(e,200,t);if(1===a(s))return s;let l=t,i=200;for(;i-l>1;){let o=Math.floor((l+i)/2);a(ta(e,o,t))<=a(s)?i=o:l=o}return ta(e,i,t)}(t,a);return{id:e,text:l,fontSize:a,color:s,width:Math.ceil(Math.max(e8(l,a),e9(l,a,200))),height:Math.ceil(l.split("\n").length*a*1.35)}}let oU=[{lookahead:!0,coverPenalty:0},{lookahead:!0,coverPenalty:80},{lookahead:!1,coverPenalty:0},{lookahead:!1,coverPenalty:240}];function oX(e){return e.span?6:("milestone"===e.event.kind?18:12)/2}let oY={circle:24,diamond:20,ellipse:24,polygon:28,rectangle:28},oT={initial:20,final:28};function oZ(e,t){let a=Math.max(e.width,e.height,t);return{...e,width:a,height:a}}function oG(e){return void 0===e.kind?void 0:oT[e.kind]}function oD(e){return"decision"===e||"choice"===e}function oR(e){let t=new Map,a=new Map;for(let s of e)t.set(s.target,[...t.get(s.target)??[],s]),a.set(s.source,[...a.get(s.source)??[],s]);return{incoming:t,outgoing:a}}function o$(e){return new Map(e.map((e,t)=>[e.id,t]))}function oj(e,t,a){let s=new Map,l=new Set;function i(e){for(let t of(s.set(e,"visiting"),a.get(e)??[])){let e=s.get(t.target);if("visiting"===e){l.add(t.id);continue}e||i(t.target)}s.set(e,"visited")}let o=e.nodes.find(e=>0===(t.get(e.id)??[]).length)??e.nodes[0];for(let t of(o&&i(o.id),e.nodes))s.has(t.id)||i(t.id);return l}let oN=new WeakMap;function oW(e){let t=oN.get(e);if(t||(o1(e),t=oN.get(e)))return t;let a=oR(e.edges);return t=oj(e,a.incoming,a.outgoing),oN.set(e,t),t}let oJ="\0group:",oK=new WeakMap;function oQ(e){return`${oJ}${e}`}function o1(e){let t=oK.get(e);if(void 0!==t)return t??void 0;let a=(e.groups??[]).filter(t=>e.nodes.some(e=>e.group===t.id));if(0===a.length)return void oK.set(e,null);let s=new Set(a.map(e=>e.id)),l=new Map(e.nodes.flatMap(e=>void 0!==e.group&&s.has(e.group)?[[e.id,e.group]]:[])),i=new Set(e.nodes.map(e=>e.id)),o=new Set(e.edges.flatMap(e=>[e.source,e.target].filter(e=>!i.has(e)&&s.has(e)))),r=e=>{let t=l.get(e);return void 0!==t?oQ(t):o.has(e)?oQ(e):e},n=oR(e.edges),c=oj(e,n.incoming,n.outgoing),d=new Set(e.edges.flatMap(e=>e.source===e.target?[e.id]:[])),p=a.map(t=>{let a=e.edges.filter(e=>l.get(e.source)===t.id&&l.get(e.target)===t.id),s={...e,groups:[],nodes:e.nodes.filter(e=>l.get(e.id)===t.id),edges:a},i={...s,layout:{...e.layout,direction:o7[e.layout.direction]}},o=new Set(a.flatMap(e=>c.has(e.id)?[e.id]:[]));for(let e of(oN.set(s,o),oN.set(i,o),o))d.add(e);return{across:i,diagram:s,group:t}}),h=[],g=new Set;for(let t of e.nodes){let e=r(t.id);if(g.has(e))continue;g.add(e);let s=l.get(t.id);h.push(void 0===s?t:{id:e,label:a.find(e=>e.id===s).label,kind:"process",metadata:{}})}let u=e.edges.filter(e=>r(e.source)!==r(e.target)),f={...e,groups:[],nodes:h,edges:u.map(e=>({...e,source:r(e.source),target:r(e.target)}))},m=oR(f.edges),v=oj(f,m.incoming,m.outgoing);for(let e of(oN.set(f,v),v))d.add(e);oN.set(e,d);let y={composites:o,crossEdges:u,groupOf:l,groups:p,top:f};return oK.set(e,y),y}function o0(e,t,a){let s=o$(e.nodes),l=new Map(e.nodes.map(e=>[e.id,0])),i=new Map(e.nodes.map(e=>[e.id,0]));for(let t of e.edges)a.has(t.id)||l.set(t.target,(l.get(t.target)??0)+1);let o=[];for(let t of e.nodes)(l.get(t.id)??0)===0&&o.push(t.id);let r=new Set;for(let e=0;e<o.length;e+=1){let n=o[e];if(!n||r.has(n))continue;r.add(n);let c=i.get(n)??0;for(let r of t.outgoing.get(n)??[]){if(a.has(r.id))continue;i.set(r.target,Math.max(i.get(r.target)??0,c+1));let t=(l.get(r.target)??0)-1;l.set(r.target,t),0===t&&function(e,t,a,s){let l=a.get(t)??Number.MAX_SAFE_INTEGER,i=e.findIndex((e,t)=>t>s&&(a.get(e)??Number.MAX_SAFE_INTEGER)>l);-1===i?e.push(t):e.splice(i,0,t)}(o,r.target,s,e)}}for(let s of e.nodes)!function e(s){if(r.has(s))return i.get(s)??0;let l=0;for(let i of t.incoming.get(s)??[])a.has(i.id)||(l=Math.max(l,e(i.source)+1));return r.add(s),i.set(s,l),l}(s.id);return i}let o2=new WeakMap,o3={TB:"bottom",BT:"top",LR:"right",RL:"left"};function o5(e,t,a,s=!1){let l="TB"===e.layout.direction||"BT"===e.layout.direction,[i,o]=l?["left","right"]:["top","bottom"],r=(e,t)=>Math.max(112,(a.get(ru(e.nodeId,o))??0)+(a.get(ru(t.nodeId,i))??0)+18),n=oR(e.edges),c=new Map(e.nodes.map(e=>{let a=function(e){let t,a,s,l,i,o,r,n="start"===(t=e.kind?.toLowerCase())||"end"===t?"ellipse":"initial"===t||"final"===t?"circle":oD(t)?"diamond":"rectangle",c=oG(e);if(void 0!==c||"choice"===e.kind&&!e.label){let t=c??44;return{type:"node",id:`node:${e.id}`,nodeId:e.id,...e.kind?{kind:e.kind}:{},shape:n,x:0,y:0,width:t,height:t,label:""}}let d=(s=(a=tt(e.label,"diamond"===n?744:1116)).split("\n"),l=e8(a,14),i=Math.ceil(14*s.length*1.35),o=Math.ceil(l+36),r=Math.ceil(i+28),{text:a,textHeight:i,textWidth:l,width:o,height:r}),p=e.icon?{slug:e.icon.slug,size:oY[n]}:void 0,h="diamond"===n?32:20*("ellipse"===n),g=32*("diamond"===n),u=p||"diamond"===n?function(e,t,a){let s=2*tl.boundTextPadding,l=t.textHeight+tu(a),i="diamond"===e?2:"ellipse"===e||"circle"===e?Math.SQRT2:1,o=Math.ceil((t.textWidth+s)*i),r=Math.ceil((l+s)*i);for(;tg({height:r,shape:e,width:o}).width<t.textWidth;)o+=1;for(;tg({height:r,shape:e,width:o}).height<l;)r+=1;return{width:o,height:r}}(n,d,p):{height:0,width:0},[f,m]="state"===e.kind?[136,56]:[184,72];return{type:"node",id:`node:${e.id}`,nodeId:e.id,...e.kind?{kind:e.kind}:{},...p?{icon:p}:{},shape:n,x:0,y:0,width:Math.max(f,d.width+h,u.width),height:p?Math.max(m,u.height):Math.max(m,d.height+g,u.height),label:d.text}}(e),s=t.get(e.id),i={...a,width:Math.max(a.width,s?.width??0),height:Math.max(a.height,s?.height??0)},o=(n.outgoing.get(e.id)??[]).filter(t=>t.target!==e.id),r=(n.incoming.get(e.id)??[]).filter(t=>t.source!==e.id).length+o.length,c=!oD(e.kind)&&o.length>1&&o.some(e=>e.label)?Math.max(18,...o.map(e=>{let t=rK(e.label??"");return(l?t.width:t.height)+24})):18,d=o.filter(e=>e.label),p=void 0!==oG(e)?0:"state"===e.kind?32+d.reduce((e,t)=>{let a=rK(t.label);return e+(l?a.width:a.height)+24},0)+Math.max(0,r-d.length-1)*rx:32+Math.max(0,r-1)*c;return[e.id,"choice"!==e.kind||e.label?{...i,...l?{width:Math.max(i.width,p)}:{height:Math.max(i.height,p)}}:oZ(i,p)]})),d=oW(e),p=o0(e,n,d),h=Array.from((function(e,t,a,s,l,i=!1){var o,r,n,c;let d,p,h=o$(e.nodes),g=new Map;for(let s of e.nodes){let e=a.get(s.id)??0,l=t.get(s.id);l&&g.set(e,[...g.get(e)??[],l])}for(let e=0;e<4;e+=1)for(let e of Array.from(g.keys()).sort((e,t)=>e-t)){let t=g.get(e);if(!t||t.length<2)continue;let a=new Map;(g.get(e-1)??[]).forEach((e,t)=>{a.set(e.nodeId,t)});let i=new Map;(g.get(e+1)??[]).forEach((e,t)=>{i.set(e.nodeId,t)});let o=e=>{let t=[...(s.incoming.get(e.nodeId)??[]).filter(e=>!l.has(e.id)).map(e=>a.get(e.source)).filter(e=>void 0!==e),...(s.outgoing.get(e.nodeId)??[]).filter(e=>!l.has(e.id)).map(e=>i.get(e.target)).filter(e=>void 0!==e)];return 0===t.length?h.get(e.nodeId)??Number.MAX_SAFE_INTEGER:t.reduce((e,t)=>e+t,0)/t.length};g.set(e,[...t].sort((e,t)=>{let a=o(e)-o(t);return Math.abs(a)>.001?a:(h.get(e.nodeId)??Number.MAX_SAFE_INTEGER)-(h.get(t.nodeId)??Number.MAX_SAFE_INTEGER)}))}return i?(o=g,r=e,n=a,c=l,(d=o2.get(r))||(d=function(e,t,a,s){let l=new Map,i=new Set,o=(e,t,a)=>l.set(a,[...l.get(a)??[],[e,t]]);for(let l of t.edges){let[t,r]=s.has(l.id)?[l.target,l.source]:[l.source,l.target],[n,c]=(a.get(t)??0)<=(a.get(r)??0)?[t,r]:[r,t],d=a.get(n)??0,p=a.get(c)??0;if(d===p)continue;let h=n;for(let t=d+1;t<p;t+=1){let a=`\0${l.id}\0${t}`;i.add(a);let s=e.get(t-1),r=e.get(t);r.splice(Math.round((s.indexOf(h)+.5)/s.length*r.length),0,a),o(h,a,t-1),h=a}o(h,c,p-1)}let r=new Map,n=t=>e.get(t)?.forEach((e,t)=>r.set(e,t)),c=[...e.keys()].sort((e,t)=>e-t);c.forEach(n);let d=e=>{let t=l.get(e)??[],a=0;for(let[e,[s,l]]of t.entries())for(let[i,o]of t.slice(e+1))(r.get(s)-r.get(i))*(r.get(l)-r.get(o))<0&&(a+=1);return a},p=()=>c.reduce((e,t)=>e+d(t),0),h=p(),g=()=>new Map([...e].map(([e,t])=>[e,t.filter(e=>!i.has(e))])),u=g();if(0===h)return u;let f=new Map;for(let e of l.values())for(let[t,a]of e){let e=f.get(t)??{above:[],below:[]};e.below.push(a),f.set(t,e);let s=f.get(a)??{above:[],below:[]};s.above.push(t),f.set(a,s)}let m={crossings:h,order:u};for(let t=0;t<8&&m.crossings>0;t+=1){let a=t%2==0;for(let t of a?c.slice(1):c.slice(0,-1).reverse()){let s=e.get(t),l=new Map(s.map((e,t)=>{let s=(a?f.get(e)?.above:f.get(e)?.below)??[];return[e,s.length>0?s.reduce((e,t)=>e+r.get(t),0)/s.length:t]}));s.sort((e,t)=>l.get(e)-l.get(t)),n(t)}for(let t=!0;t;)for(let a of(t=!1,c)){let s=e.get(a);for(let e=0;e+1<s.length;e+=1){let l=d(a-1)+d(a);[s[e],s[e+1]]=[s[e+1],s[e]],n(a),d(a-1)+d(a)<l?t=!0:([s[e],s[e+1]]=[s[e+1],s[e]],n(a))}}let s=p();s<m.crossings&&(m={crossings:s,order:g()})}return m.order}(new Map([...o].map(([e,t])=>[e,t.map(e=>e.nodeId)])),r,n,c),o2.set(r,d)),p=new Map([...o.values()].flat().map(e=>[e.nodeId,e])),new Map([...o.keys()].map(e=>[e,(d.get(e)??[]).flatMap(e=>p.has(e)?[p.get(e)]:[])]))):g})(e,c,p,n,d,s).entries()).sort(([e],[t])=>e-t).map(([e,t])=>({breadth:t.reduce((e,a,s)=>e+(l?a.width:a.height)+(s>0?r(t[s-1],a):0),0),depth:Math.max(...t.map(e=>l?e.height:e.width)),rank:e,shapes:t})),g=o3[e.layout.direction],u=(e,t)=>Math.max(0,...e.map(e=>a.get(ru(e.nodeId,t))??0));return{feedbackEdges:d,gapAfter:h.map((t,s)=>{let i=l?0:Math.max(0,...e.edges.filter(e=>t.shapes.some(t=>t.nodeId===e.source)&&e.label&&e.source!==e.target).map(e=>rK(e.label,oD(c.get(e.source)?.kind)).width+16+72)),o=h[s+1];return Math.max(96,i,o&&a.size>0?u(t.shapes,g)+u(o.shapes,rb[g])+18:0)}),gapBetween:r,highSide:o,lowSide:i,rankByNodeId:p,rankMetrics:h,reachOf:u,vertical:l}}let o4={bandOf:new Map,continuations:new Set},o6={crossingRepair:!1,reorder:!1,wrap:o4},o7={TB:"LR",BT:"LR",LR:"TB",RL:"TB"};function o8(e,t){let[a,s]=e>t?[e,t]:[t,e];return(a+40)/(s+40)}function o9(e,t=new Map,a=new Map,{reorder:s,wrap:l}=o6){let{gapAfter:i,gapBetween:o,highSide:r,lowSide:n,rankMetrics:c,reachOf:d,vertical:p}=o5(e,t,a,s),h=[];for(let[e,t]of c.entries()){let a=l.bandOf.get(t.shapes[0].nodeId)??0;(h[a]??=[]).push({index:e,metric:t})}let g=[],u=48;for(let[e,t]of h.entries()){let a=Math.max(...t.map(({metric:e})=>e.breadth)),s=48;for(let{index:e,metric:l}of t){let t=u+Math.max(0,a-l.breadth)/2;for(let[e,a]of l.shapes.entries()){let i=l.shapes[e+1];p?(g.push({...a,x:t,y:s+Math.max(0,l.depth-a.height)/2}),t+=a.width):(g.push({...a,x:s+Math.max(0,l.depth-a.width)/2,y:t}),t+=a.height),i&&(t+=o(a,i))}s+=l.depth+i[e]}let l=h[e+1];l&&(u+=a+Math.max(144,d(t.flatMap(({metric:e})=>e.shapes),r)+d(l.flatMap(({metric:e})=>e.shapes),n)+72))}if("BT"===e.layout.direction){let e=Math.max(...g.map(e=>e.y+e.height));return g.map(t=>({...t,y:48+e-t.y-t.height}))}if("RL"===e.layout.direction){let e=Math.max(...g.map(e=>e.x+e.width));return g.map(t=>({...t,x:48+e-t.x-t.width}))}return g}function re(e,t=new Map,a=new Map,s=o6,l=new Map){let i=o1(e);return i?function(e,t,a,s,l,i){let o="TB"===e.layout.direction||"BT"===e.layout.direction,r=new Set(t.crossEdges.flatMap(e=>[e.source,e.target])),n=t.groups.map(({across:e,diagram:n,group:c})=>{let d=o9(l.groupsAcross?e:n,a,s,{...o6,reorder:l.reorder}),p=rt(d),h=(e,t)=>"top"===t?e.y-p.y:"bottom"===t?p.y+p.height-e.y-e.height:"left"===t?e.x-p.x:p.x+p.width-e.x-e.width,g=e=>Math.max(40,...d.map(t=>(s.get(ru(t.nodeId,e))??0)-h(t,e)+18))+(i.get(c.id)??0),u=t2(c.label),f=d.filter(e=>r.has(e.nodeId)&&.01>=h(e,"top")).map(e=>e.x-p.x+e.width/2-36),m={top:g("top"),bottom:g("bottom"),right:g("right"),left:o&&f.length>0?Math.max(g("left"),u+2*tK.clearance+18-Math.min(...f)):g("left")};return{content:p,group:c,height:p.height+m.top+m.bottom,nodes:d,padding:m,width:Math.max(p.width+m.left+m.right,u+2*tK.clearance+16,(s.get(ru(c.id,"top"))??0)>0&&t.composites.has(c.id)?u+2*tK.clearance+36+16+t.crossEdges.filter(e=>e.source===c.id||e.target===c.id).length*rx:0)}}),c=new Map(a),d=new Map(s);for(let e of n){let a=oQ(e.group.id);c.set(a,{width:e.width,height:e.height+28});let l=(e.width-e.content.width-e.padding.left-e.padding.right)/2,i=(t,a)=>"top"===a?t.y-e.content.y+e.padding.top+28:"bottom"===a?e.content.y+e.content.height-t.y-t.height+e.padding.bottom:"left"===a?t.x-e.content.x+e.padding.left+l:e.content.x+e.content.width-t.x-t.width+e.padding.right+l;for(let l of["top","right","bottom","left"]){let o=Math.max(0,t.composites.has(e.group.id)?(s.get(ru(e.group.id,l))??0)-28*("top"===l):0,...e.nodes.map(e=>(s.get(ru(e.nodeId,l))??0)-i(e,l)));o>0&&d.set(ru(a,l),o)}}let p=o9(t.top,c,d,{...l,wrap:o4}),h=new Map;for(let e of p)e.nodeId.startsWith(oJ)||h.set(e.nodeId,{nodes:[e]});for(let e of n){let t=oQ(e.group.id),a=p.find(e=>e.nodeId===t),s={x:a.x,y:a.y+28,width:a.width,height:a.height-28},l=s.x+e.padding.left+(s.width-e.content.width-e.padding.left-e.padding.right)/2-e.content.x,i=s.y+e.padding.top+(s.height-e.content.height-e.padding.top-e.padding.bottom)/2-e.content.y;h.set(t,{frame:s,nodes:e.nodes.map(e=>({...e,x:e.x+l,y:e.y+i}))})}!function(e,t,a){let{crossEdges:s,top:l}=e,i=oW(l),o=o0(l,oR(l.edges),i),r=new Map;for(let e of l.nodes){let t=o.get(e.id)??0;r.set(t,[...r.get(t)??[],e.id])}let n=a?"x":"y",c=a?"width":"height",d=e=>(r.get(e)??[]).reduce((e,a)=>{let s=t.get(a);return e+(s.frame??s.nodes[0])[c]},0),p=[...r.keys()].sort((e,t)=>e-t),h=p.reduce((e,t)=>d(t)>d(e)?t:e),g=a=>{let s=e.composites.has(a)?t.get(oQ(a)).frame:[...t.values()].flatMap(e=>e.nodes).find(e=>e.nodeId===a);return s[n]+s[c]/2},u=(e,a,c)=>{var d;let p,[h]=r.get(e)??[];if(!h||1!==r.get(e).length)return;let u=l.edges.find(e=>!i.has(e.id)&&(c?e.target:e.source)===h&&o.get(c?e.source:e.target)===a);if(!u)return;let f=s[l.edges.indexOf(u)],[m,v]=c?[f.target,f.source]:[f.source,f.target];d=g(v)-g(m),(p=t.get(h)).nodes=p.nodes.map(e=>({...e,[n]:e[n]+d})),p.frame&&(p.frame={...p.frame,[n]:p.frame[n]+d})};for(let e of p.filter(e=>e>h))u(e,e-1,!0);for(let e of p.filter(e=>e<h).reverse())u(e,e+1,!1)}(t,h,o);let g=[...h.values()].flatMap(e=>e.nodes),u=o$(e.nodes);g.sort((e,t)=>u.get(e.nodeId)-u.get(t.nodeId));let f=n.map(({group:e})=>{let t=h.get(oQ(e.id)).frame;return{box:t,elementId:`group:${e.id}`,id:e.id,label:e.label,labelBox:t3({...t,name:e.label})}});return{groups:{composites:t.composites,frames:f,groupOf:t.groupOf},nodes:g}}(e,i,t,a,s,l):{nodes:o9(e,t,a,s)}}function rt(e){let t=Math.min(...e.map(e=>e.x)),a=Math.min(...e.map(e=>e.y));return{x:t,y:a,width:Math.max(...e.map(e=>e.x+e.width))-t,height:Math.max(...e.map(e=>e.y+e.height))-a}}function ra(e,t){return{type:"node",id:e,nodeId:e,shape:"rectangle",label:"",x:t.x,y:t.y,width:t.width,height:t.height}}function rs(e){return(e?.frames??[]).flatMap(t=>e.composites.has(t.id)?[{...ra(t.elementId,t.box),kind:"composite",label:t.label,nodeId:t.id}]:[])}function rl(e){return(e?.frames??[]).map(e=>ra(e.elementId,{...e.box,y:e.box.y-28,height:e.box.height+28}))}let ri="group-outline:";function ro(e){return tL([{x:e.x,y:e.y},{x:e.x+e.width,y:e.y},{x:e.x+e.width,y:e.y+e.height},{x:e.x,y:e.y+e.height},{x:e.x,y:e.y}])}function rr(e,t){return e.x>=t.x-.01&&e.x<=t.x+t.width+.01&&e.y>=t.y-.01&&e.y<=t.y+t.height+.01}function rn(e){return{type:"text",id:`label:${e.nodeId}`,containerId:e.id,x:e.x+e.width/2,y:e.y+e.height/2,text:e.label,fontSize:14,maxWidth:Math.max(1,e.width-36),...e.icon?{verticalAlign:"bottom"}:{}}}function rc(e){return{x:e.x+e.width/2,y:e.y+e.height/2}}function rd(e,t,a){let s=rc(e),l=rc(t),i=l.x-s.x,o=l.y-s.y,r=e.kind?.toLowerCase();if("LR"===a||"RL"===a)return i>=0?{sourceEdge:"right",targetEdge:"left"}:{sourceEdge:"left",targetEdge:"right"};if(o<0)return!(Math.min(e.x+e.width,t.x+t.width)-Math.max(e.x,t.x)>.01)&&Math.abs(i)>Math.abs(o)?{sourceEdge:i>0?"right":"left",targetEdge:"bottom"}:{sourceEdge:"top",targetEdge:"bottom"};let n=oD(r)&&o>e.height+96;return oD(r)&&o>0&&(0!==i||n)?{sourceEdge:i<0?"left":"right",targetEdge:"top"}:o>0?{sourceEdge:"bottom",targetEdge:"top"}:Math.abs(i)>Math.abs(o)?i>0?{sourceEdge:"right",targetEdge:"left"}:{sourceEdge:"left",targetEdge:"right"}:{sourceEdge:"top",targetEdge:"bottom"}}function rp(e,t,a){return Math.min(a,Math.max(t,e))}function rh(e,t,a=0){let s,l=(s="top"===t||"bottom"===t?e.width/2-16:e.height/2-16)>0?rp(a,-s,s):0,i=rc(e),o=e.width/2,r=e.height/2;if("diamond"===e.shape&&o>0&&r>0){if("top"===t||"bottom"===t){let e=i.x+l,a=r*(1-Math.abs(l)/o);return{x:e,y:"top"===t?i.y-a:i.y+a}}let e=i.y+l,a=o*(1-Math.abs(l)/r);return{x:"left"===t?i.x-a:i.x+a,y:e}}if(("ellipse"===e.shape||"circle"===e.shape)&&o>0&&r>0){if("top"===t||"bottom"===t){let e=i.x+l,a=r*Math.sqrt(Math.max(0,1-(l/o)**2));return{x:e,y:"top"===t?i.y-a:i.y+a}}let e=i.y+l,a=o*Math.sqrt(Math.max(0,1-(l/r)**2));return{x:"left"===t?i.x-a:i.x+a,y:e}}switch(t){case"top":return{x:e.x+e.width/2+l,y:e.y};case"right":return{x:e.x+e.width,y:e.y+e.height/2+l};case"bottom":return{x:e.x+e.width/2+l,y:e.y+e.height};case"left":return{x:e.x,y:e.y+e.height/2+l}}}function rg(e){return`${e.edgeId}:${e.endpoint}`}function ru(e,t){return`${e}:${t}`}function rf(e){return e.edge.source===e.edge.target}function rm(e,t){let[a,s]="source"===t?[e.sourceEdge,e.targetEdge]:[e.targetEdge,e.sourceEdge];return rk[s][rC(a)]}function rv(e,t){let a="source"===t?e.sourceEdge:e.targetEdge;return rf(e)?1e9*rm(e,t):rc("source"===t?e.target:e.source)[rC(a)]}function ry(e,t){return e.find(e=>e.edge.id===t)?.pair??0}function rw(e,t=!1){let a=new Map;for(let t of e){let e=ru(t.source.nodeId,t.sourceEdge),s=ru(t.target.nodeId,t.targetEdge);a.set(e,[...a.get(e)??[],{edgeId:t.edge.id,endpoint:"source",coordinate:rv(t,"source")}]),a.set(s,[...a.get(s)??[],{edgeId:t.edge.id,endpoint:"target",coordinate:rv(t,"target")}])}let s=new Map;for(let l of a.values()){let a=l.filter(e=>"source"===e.endpoint),i=a.map(t=>e.find(e=>e.edge.id===t.edgeId)).filter(e=>e.edge.label),o=a.length>1&&i.length>0&&(!oD(i[0].source.kind)||t&&i.length>1)?Math.max(18,...i.map(e=>{let t=rK(e.edge.label);return("top"===e.sourceEdge||"bottom"===e.sourceEdge?t.width:t.height)+24})):18;l.sort((t,a)=>t.coordinate-a.coordinate||ry(e,t.edgeId)-ry(e,a.edgeId)).forEach((e,t)=>{s.set(rg(e),(t-(l.length-1)/2)*18*o/18)})}return s}let rx=36,rb={top:"bottom",right:"left",bottom:"top",left:"right"},rk={top:{x:0,y:-1},right:{x:1,y:0},bottom:{x:0,y:1},left:{x:-1,y:0}};function rM(e){return"source"===e.endpoint?e.route.sourceEdge:e.route.targetEdge}function rC(e){return"top"===e||"bottom"===e?"x":"y"}function rz(e,t){return("x"===rC(t)?e.width:e.height)/2-16}function r_(e,t){return"source"===e.endpoint?rN(e.route,t,36):rj(e.route.target,t,e.route.targetEdge,36)}let rL={desired:0,high:1/0,low:-1/0,priority:0};function rB(e,t,a=!1){let s=rw(e,t),l=new Map;for(let t of e)for(let e of["source","target"]){let a=ru(t[e].nodeId,"source"===e?t.sourceEdge:t.targetEdge);l.set(a,[...l.get(a)??[],{endpoint:e,key:rg({edgeId:t.edge.id,endpoint:e}),route:t}])}let i=[...l.values()].sort((e,t)=>t.length-e.length);for(let e=0;e<3;e+=1)for(let e of i){let i=rM(e[0]),o=e[0].route[e[0].endpoint],r=new Map(e.map(e=>[e,function(e,t,a){let s=function(e,t,a){let s={endpoint:"source"===e.endpoint?"target":"source",key:rg({edgeId:e.route.edge.id,endpoint:"source"===e.endpoint?"target":"source"}),route:e.route},l=e.route[e.endpoint],i=rM(e),o=rM(s),r=rC(i),n=rk[i];if(rf(e.route)){let t=rm(e.route,e.endpoint)*Math.max(0,rz(l,i));return{desired:t,high:t,low:t,priority:2}}let c=rh(l,i,t.get(e.key)??0),d=rh(e.route[s.endpoint],o,t.get(s.key)??0),p=(d.x-c.x)*n.x+(d.y-c.y)*n.y;if(rC(o)!==r&&p>=r_(e,c)){let e=rD(d,o,r_(s,d)),t=rk[o][r],a=e[r]-rc(l)[r];return{desired:0,high:t<0?a:1/0,lane:t*p,low:t>0?a:-1/0,priority:1}}let h=(e,t)=>"rectangle"!==e.route[e.endpoint].shape&&a.get(ru(e.route[e.endpoint].nodeId,t))?.length===1,g=o===rb[i]&&p>0;if(h(e,i)&&!(g&&"target"===e.endpoint&&h(s,o)))return{desired:0,high:0,low:0,priority:2};let u=d[r]-rc(l)[r];return g&&Math.abs(u)<=rz(l,i)?{desired:u,high:u,low:u,priority:2}:rL}(e,t,a),l=e.route[e.endpoint];if("composite"!==l.kind||"top"!==rM(e))return s;let i=t3({...l,name:l.label}),o=i.x+i.width+18-rc(l).x;return{...s,desired:Math.max(o,s.desired),low:Math.max(o,s.low),high:Math.max(o,s.high),priority:3}}(e,s,l)])),n=function(e,t,a,s){let l=e=>{let t="source"===e.endpoint?"target":"source";if(!s||rf(e.route))return rv(e.route,e.endpoint);let l=e.route[t],i="source"===t?e.route.sourceEdge:e.route.targetEdge,o=rg({edgeId:e.route.edge.id,endpoint:t});return rD(rh(l,i,a.get(o)??0),i,36)[rC(rM(e))]},i=[...e].sort((e,t)=>l(e)-l(t)||(e.route.pair??0)-(t.route.pair??0));for(let e of[1,-1]){let a=i.map((e,a)=>({index:a,lane:t.get(e).lane,slot:e})).filter(({lane:t})=>void 0!==t&&Math.sign(t)===e),s=[...a].sort((e,t)=>e.lane-t.lane);a.forEach(({index:e},t)=>{i[e]=s[t].slot})}return i}(e,r,s,a),c=n.filter(e=>"source"===e.endpoint),d=c.filter(e=>e.route.edge.label),p=c.length>1&&d.length>0&&(!oD(d[0].route.source.kind)||t&&d.length>1)?Math.max(...d.map(e=>{let t=rK(e.route.edge.label);return("x"===rC(i)?t.width:t.height)+24})):0;"state"===o.kind&&function(e){for(let[t,a]of e.entries()){let{route:s}=a;if("source"!==a.endpoint||void 0!==s.pair||rf(s))continue;let l=0===t?-1:t===e.length-1?1:void 0;e.length>1&&void 0!==l?s.labelSide=l:delete s.labelSide}}(n);let h=function(e,t,a){let s=e.map((e,a)=>t.slice(0,a).reduce((e,t)=>e+t,0)),l=s.at(-1)??0;if(l>2*a)return s.map(e=>e-l/2);let i=e.map(()=>-1/0),o=e.map(()=>1/0),r=()=>{let e=i.map((e,t)=>Math.max(e-s[t],-a)),t=o.map((e,t)=>Math.min(e-s[t],a-l));for(let t=1;t<e.length;t+=1)e[t]=Math.max(e[t],e[t-1]);for(let e=t.length-2;e>=0;e-=1)t[e]=Math.min(t[e],t[e+1]);return{highs:t,lows:e}};for(let{index:t}of e.map((e,t)=>({index:t,priority:e.priority})).filter(({priority:e})=>e>0).sort((e,t)=>t.priority-e.priority||e.index-t.index)){i[t]=e[t].low,o[t]=e[t].high;let{highs:a,lows:s}=r();s.some((e,t)=>e>a[t]+.01)&&(i[t]=-1/0,o[t]=1/0)}let{highs:n,lows:c}=r();return(function(e,t,a){let s=[];for(let[l,i]of e.entries())for(s.push({count:1,high:a[l],low:t[l],sum:i,value:rp(i,t[l],Math.max(t[l],a[l]))});s.length>1&&s.at(-2).value>s.at(-1).value;){let e=s.pop(),t=s.at(-1);t.count+=e.count,t.sum+=e.sum,t.low=Math.max(t.low,e.low),t.high=Math.min(t.high,e.high),t.value=rp(t.sum/t.count,t.low,Math.max(t.low,t.high))}return s.flatMap(e=>Array(e.count).fill(e.value))})(e.map((e,t)=>e.desired-s[t]),c,n).map((e,t)=>e+s[t])}(n.map(e=>r.get(e)),n.slice(1).map((e,t)=>Math.max("state"===o.kind?function(e,t,a){let s=(e,t)=>{let{route:s}=e,l="x"===rC(a);if("source"!==e.endpoint||!s.edge.label||rf(s)||rA(s)!==t)return 0;let i=rK(s.edge.label,oD(s.source.kind));return(l?i.width:i.height)+24};return Math.max(s(e,1),s(t,-1))}(n[t],e,i):p,"target"===e.endpoint||"target"===n[t].endpoint?rx:18)),rz(o,i));n.forEach((e,t)=>s.set(e.key,h[t]))}return s}function rA(e){let t="left"===e.sourceEdge||"right"===e.sourceEdge;return e.labelSide??e.pair??(t?-1:1)}function rS(e,t){let{edge:a,source:s,sourceEdge:l,target:i,targetEdge:o}=e;return{start:rh(s,l,t.get(rg({edgeId:a.id,endpoint:"source"}))??0),end:rh(i,o,t.get(rg({edgeId:a.id,endpoint:"target"}))??0)}}function rP(e,t,a){let s=0,l=1;for(let[i,o]of[["x","width"],["y","height"]]){let r=a[i]+.01,n=a[i]+a[o]-.01,c=t[i]-e[i];if(.01>=Math.abs(c)){if(e[i]<=r||e[i]>=n)return!1}else{let t=(r-e[i])/c,a=(n-e[i])/c;s=Math.max(s,Math.min(t,a)),l=Math.min(l,Math.max(t,a))}}return s<l}function rV(e,t,a,s){let l=(a.x-rc(e).x)/(e.width/2),i=(a.y-rc(e).y)/(e.height/2),o="ellipse"===e.shape||"circle"===e.shape?{x:l/e.width,y:i/e.height}:"diamond"===e.shape?{x:Math.sign(l)/e.width,y:Math.sign(i)/e.height}:{x:"left"===t?-1:+("right"===t),y:"top"===t?-1:+("bottom"===t)};return(o.x*(s.x-a.x)+o.y*(s.y-a.y))/Math.hypot(o.x,o.y)>=-.01}function rH(e,t,a,s=!1){let l=new Map,i=oW(t),o="TB"===t.layout.direction||"BT"===t.layout.direction?["right","left","top","bottom"]:["bottom","top","left","right"],r=rw(e);for(let n of e.filter(e=>i.has(e.edge.id)||s&&(e=>{let{start:t,end:s}=rS(e,r);return!rV(e.source,e.sourceEdge,t,s)||!rV(e.target,e.targetEdge,s,t)||a.some(a=>a!==e.source&&a!==e.target&&rP(t,s,a))})(e))){let s,c={sourceEdge:n.sourceEdge,targetEdge:n.targetEdge},d=rg({edgeId:n.edge.id,endpoint:"source"}),p=rg({edgeId:n.edge.id,endpoint:"target"}),h=[c,...o.map(e=>({sourceEdge:e,targetEdge:e})),...o.flatMap(e=>o.map(t=>({sourceEdge:e,targetEdge:t})))],g=[!1,!0].flatMap(e=>h.map(t=>({...t,spread:e}))),u=!1;for(let t of g){Object.assign(n,{sourceEdge:t.sourceEdge,targetEdge:t.targetEdge});let l=new Map(r),i=(e,a,s)=>{let i=("top"===a||"bottom"===a?e.width:e.height)/2-16;return t.spread?[l.get(s)??0,-i,i]:[l.get(s)??0]},o=i(n.source,n.sourceEdge,d),c=i(n.target,n.targetEdge,p);for(let i of o){for(let o of c){l.set(d,i),l.set(p,o);let{start:c,end:h}=rS(n,l);if(!rV(n.source,n.sourceEdge,c,h)||!rV(n.target,n.targetEdge,h,c)||a.some(e=>e!==n.source&&e!==n.target&&rP(c,h,e))||e.some(e=>{if(e===n)return!1;let{start:t,end:a}=rS(e,l);return[[n.source,c,e.source,t],[n.source,c,e.target,a],[n.target,h,e.source,t],[n.target,h,e.target,a]].some(([e,t,a,s])=>e===a&&.01>=Math.hypot(t.x-s.x,t.y-s.y))||function(e,t,a,s){let l=t.x-e.x,i=t.y-e.y,o=Math.hypot(l,i);if(o<=.01)return!1;let r=t=>Math.abs(l*(t.y-e.y)-i*(t.x-e.x))/o;if(r(a)>.01||r(s)>.01)return!1;let n=t=>((t.x-e.x)*l+(t.y-e.y)*i)/o,c=n(a),d=n(s);return Math.min(o,Math.max(c,d))-Math.max(0,Math.min(c,d))>.01}(c,h,t,a)}))continue;let g=r1(e,l),f=g.find(e=>e.nodeId===`branch-label:${n.edge.id}`);if(!(f&&rP(c,h,f))&&(s??={sides:t,sourceOffset:i,targetOffset:o},!g.some(e=>e.nodeId!==`branch-label:${n.edge.id}`&&rP(c,h,e)))){r.set(d,i),r.set(p,o),u=!0;break}}if(u)break}if(u)break}if(u||i.has(n.edge.id)){if(!u)if(Object.assign(n,s?.sides??c),s)r.set(d,s.sourceOffset),r.set(p,s.targetOffset);else{let e="TB"===t.layout.direction||"BT"===t.layout.direction,s=e?"x":"y",i=e?"width":"height",o=rc(n.source)[s],r=Math.max(...a.flatMap(e=>[Math.abs(e[s]-o),Math.abs(e[s]+e[i]-o)]));l.set(n.source.nodeId,{width:n.source.width,height:n.source.height,[i]:2*(r+16+18)})}}else Object.assign(n,s?.sides??c),s&&(r.set(d,s.sourceOffset),r.set(p,s.targetOffset))}return{offsets:r,minimumSizes:l}}function rq(e){let t=[];for(let a of e){let e=t[t.length-1];e&&e.x===a.x&&e.y===a.y||t.push(a)}let a=t[0];return a?[a,...t.slice(1)]:[{x:0,y:0}]}function rF(e,t){return e.x>=t.x&&e.x<=t.x+t.width&&e.y>=t.y&&e.y<=t.y+t.height}function rI(e,t,a){let s,l="horizontal"===e.orientation,[i,o]=l?[t.width/2,t.height/2]:[t.height/2,t.width/2],r=l?t.x+i:t.y+i,n=Math.abs(e.staticCoordinate-(l?t.y+o:t.x+o));if("ellipse"===t.shape||"circle"===t.shape){let[e,t]=[i+a,o+a];if(n>=t)return!1;s=e*Math.sqrt(1-(n/t)**2)}else if("diamond"===t.shape){let e=1+a*Math.hypot(1/i,1/o);if(n>=o*e)return!1;s=i*(e-n/o)}else{if(n>=o+a)return!1;s=i+a}return e.min<r+s-.01&&e.max>r-s+.01}function rE(e,t){return e.id.startsWith("node:")&&!t.has(e.nodeId)}function rO(e,t,a){let s=0;for(let[l,i]of tL(e).entries())for(let o of t)!(a.has(o.nodeId)&&(0===l&&rF(e[0],o)||l===e.length-2&&rF(e.at(-1),o)))&&tS(i,o)&&(s+=1);return s}function rU(e,t,a){let s=0;for(let l of tL(e))for(let e of t)rE(e,a)&&!tS(l,e)&&rI(l,e,12)&&(s+=1);return s}function rX(e){return tL(e.points).map(t=>({...t,arrowId:e.arrowId,startBindingId:e.sourceNodeId,endBindingId:e.targetNodeId}))}function rY(e){return e.flatMap(e=>rX({arrowId:e.id,points:e.points,sourceNodeId:e.sourceNodeId,targetNodeId:e.targetNodeId}))}function rT(e,t,a){let s=rX({arrowId:`edge:${a.edge.id}`,points:e,sourceNodeId:a.edge.source,targetNodeId:a.edge.target}),l=0;for(let e of s)for(let a of t)e.arrowId!==a.arrowId&&tA(e,a)&&(l+=1);return l}function rZ(e,t){let a=rX({arrowId:`edge:${t.edge.id}`,points:e,sourceNodeId:t.edge.source,targetNodeId:t.edge.target}),s=0;for(let e=0;e<a.length;e+=1){let t=a[e];if(t)for(let l=e+1;l<a.length;l+=1){let e=a[l];e&&tA(t,e)&&(s+=1)}}return s}function rG(e,t,a){switch(a){case"top":return t.x===e.x&&e.y-t.y>=36;case"right":return t.y===e.y&&t.x-e.x>=36;case"bottom":return t.x===e.x&&t.y-e.y>=36;case"left":return t.y===e.y&&e.x-t.x>=36}}function rD(e,t,a){switch(t){case"top":return{x:e.x,y:e.y-a};case"right":return{x:e.x+a,y:e.y};case"bottom":return{x:e.x,y:e.y+a};case"left":return{x:e.x-a,y:e.y}}}function rR(e,t){return 0===t.length?0:tL(e).filter(e=>t.some(t=>t.orientation===e.orientation&&8>Math.abs(t.staticCoordinate-e.staticCoordinate)&&tB(t,e)>8)).length}function r$(e,t,a,s,l){let i=e[0];if(!i)return[{x:0,y:0}];let o=e=>{let i,o,r,n,c,d=l.quality?.({id:`edge:${s.edge.id}`,points:e,sourceId:s.edge.source,targetId:s.edge.target})??{arrowheadsCrossed:0,corridors:0,jogs:0};return[-(i=e[0],o=e[1],r=e[e.length-1],n=e[e.length-2],c=0,o&&rG(i,o,s.sourceEdge)&&(c+=1),n&&r&&rG(r,n,s.targetEdge)&&(c+=1),c),rO(e,t,a),rZ(e,s),rT(e,l.segments,s),rR(e,l.outlines),d.corridors,d.arrowheadsCrossed,l.crossings?.route(e,`edge:${s.edge.id}`)??0,function(e){let t=e[0],a=e[e.length-1];if(!t||!a)return 0;let s=e.map(e=>e.x),l=e.map(e=>e.y),i=0;return a.x<t.x?i+=Math.max(0,Math.max(...s)-t.x):a.x>t.x&&(i+=Math.max(0,t.x-Math.min(...s))),a.y<t.y?i+=Math.max(0,Math.max(...l)-t.y):a.y>t.y&&(i+=Math.max(0,t.y-Math.min(...l))),i}(e),function(e){let t=e[0],a=e[e.length-1];if(!t||!a)return 0;let s=e.map(e=>e.x),l=e.map(e=>e.y),i=0;return a.x<t.x?i+=Math.max(0,a.x-Math.min(...s)):a.x>t.x&&(i+=Math.max(0,Math.max(...s)-a.x)),a.y<t.y?i+=Math.max(0,a.y-Math.min(...l)):a.y>t.y&&(i+=Math.max(0,Math.max(...l)-a.y)),i}(e),d.jogs,function(e){let t=0;for(let a=0;a<e.length-1;a+=1){let s=e[a],l=e[a+1];s&&l&&(t+=Math.abs(l.x-s.x)+Math.abs(l.y-s.y))}return t}(e),l.quality?tL(e).filter((e,t,a)=>t>0&&e.orientation!==a[t-1].orientation).length:0]},r=(e,t)=>{for(let a=0;a<e.length;a+=1){let s=(e[a]??0)-(t[a]??0);if(0!==s)return s<0}return!1},n=i,c=o(i);for(let t of e.slice(1)){let e=o(t);r(e,c)&&(n=t,c=e)}return n}function rj(e,t,a,s){switch(a){case"left":return s+t.x-e.x;case"right":return s+e.x+e.width-t.x;case"top":return s+t.y-e.y;case"bottom":return s+e.y+e.height-t.y}}function rN(e,t,a){let s=e.edge.label&&!rf(e)?"left"===e.sourceEdge||"right"===e.sourceEdge?rK(e.edge.label,oD(e.source.kind)).width+16:Math.max(40,rK(e.edge.label,oD(e.source.kind)).height+24):0;return rj(e.source,t,e.sourceEdge,Math.max(a,Math.min(s,function(e,t){if("choice"!==e.source.kind||e.targetEdge!==rb[e.sourceEdge])return 1/0;let a=rk[e.sourceEdge],s=0===a.x?"y":"x",l=a[s],[i,o]="x"===s?["y","height"]:["x","width"];if(t[i]>=e.target[i]&&t[i]<=e.target[i]+e.target[o])return 1/0;let r=((l>0?e.target[s]:e.target[s]+e.target["x"===s?"width":"height"])-t[s])*l-36-18;return r>36?r:1/0}(e,t))))}function rW(e,t,a=!1){let s="TB"===t||"BT"===t;if(!s&&!a)return;let l=s?"x":"y",i=s?"y":"x",[o,r]=s?["left","right"]:["top","bottom"],n="TB"===t?"bottom":"BT"===t?"top":"LR"===t?"right":"left";for(let t of new Set(e.filter(e=>oD(e.source.kind)).map(e=>e.source))){let a=e.filter(e=>e.source===t).sort((e,t)=>rc(e.target)[l]-rc(t.target)[l]||rc(e.target)[i]-rc(t.target)[i]||e.index-t.index);a.length<2||a.forEach((e,s)=>{let c=a.filter(e=>1>Math.abs(rc(e.target)[l]-rc(t)[l])).sort((e,a)=>Math.abs(rc(e.target)[i]-rc(t)[i])-Math.abs(rc(a.target)[i]-rc(t)[i]))[0],d=2===a.length&&e===c,p=2===a.length&&void 0!==c&&!d;e.sourceEdge=d?n:p?rc(e.target)[l]<rc(t)[l]?o:r:0===s?o:s===a.length-1?r:n})}}function rJ(e,t){let a=ta(e,t,13);return{width:te(a,13,t),height:Math.ceil(13*a.split("\n").length*1.35)}}function rK(e,t=!1){return rJ(e,t?80:160)}function rQ(e,t){let a=rK(e.edge.label??"",oD(e.source.kind)),s=rD(t,e.sourceEdge,rN(e,t,36)),l="left"===e.sourceEdge||"right"===e.sourceEdge;if(rf(e)){let t=rD(rh(e.target,e.targetEdge),e.targetEdge,36),i=rk[e.sourceEdge];return l?{x:s.x+i.x*(a.width/2+8),y:(s.y+t.y)/2}:{x:(s.x+t.x)/2,y:s.y+i.y*(a.height/2+5)}}let i=rA(e);return{x:(t.x+s.x)/2+(l?0:i*(a.width/2+8)),y:(t.y+s.y)/2+(l?i*(a.height/2+5):0)}}function r1(e,t){return e.filter(e=>e.edge.label).map(e=>{let a=rh(e.source,e.sourceEdge,t.get(rg({edgeId:e.edge.id,endpoint:"source"}))??0),s=rQ(e,a),l=rK(e.edge.label,oD(e.source.kind)),i=l.width+12;return{...e.source,id:`branch-label:${e.edge.id}`,nodeId:`branch-label:${e.edge.id}`,x:s.x-i/2,y:s.y-l.height/2-4,width:i,height:l.height+8,shape:"rectangle"}})}function r0(e,t){return{x:e.x-t.width/2,y:e.y-t.height/2,width:t.width,height:t.height}}function r2(e,t){return e.x<t.x+t.width&&t.x<e.x+e.width&&e.y<t.y+t.height&&t.y<e.y+e.height}function r3(e,t){return{x:e.x-t,y:e.y-t,width:e.width+2*t,height:e.height+2*t}}function r5(e,t,a){let s=t=>Math.min(1/0,...t.map(t=>(function(e,t){let[a,s,l,i]="horizontal"===t.orientation?[t.min,t.max,t.staticCoordinate,t.staticCoordinate]:[t.staticCoordinate,t.staticCoordinate,t.min,t.max];return Math.hypot(Math.max(0,e.x-s,a-e.x-e.width),Math.max(0,e.y-i,l-e.y-e.height))})(e,t)));return s(a)<s(t)+8}function r4(e,t){let a=[],s=0;for(let l of tL(e)){if(s>240)break;let i=e[l.segmentIndex],o=e[l.segmentIndex+1],r=l.max-l.min,n="horizontal"===l.orientation,c=n?t.width/2+4:t.height/2+4;for(let e=Math.min(c,r/2);e<=r-Math.min(c,r/2)&&!(s+e>240);e+=12){let s=e/r,l={x:i.x+(o.x-i.x)*s,y:i.y+(o.y-i.y)*s};for(let e of[1,-1])a.push(n?{x:l.x,y:l.y-e*(t.height/2+5)}:{x:l.x+e*(t.width/2+8),y:l.y})}s+=r}return a}function r6(e,t,a,s,l=!0){return r7(e,t,a,s,l).labels}function r7(e,t,a,s,l=!0){let i=[],o=0,r=e.map(e=>tL(e.points)),n=[...a,...(s?.frames??[]).map(e=>ra(`group-label:${e.id}`,e.labelBox))],c=(s?.frames??[]).flatMap(e=>ro(e.box)),d=[],p=e.map((e,a)=>e.label?rK(e.label,oD(t[a]?.source.kind)):void 0),h=e.map((e,a)=>e.label?rQ(t[a],e.points[0]):void 0);for(let[t,a]of e.entries()){let e=p[t],s=h[t];if(!e||!s)continue;let i=h.flatMap((e,a)=>e&&a!==t&&!d.some(e=>e.index===a)?[r0(e,p[a])]:[]),g=[...r.flatMap((e,a)=>a===t?[]:e),...c],u=(a,s=0)=>(function(e,t,a,s,l){let i=r3(e,3),o=r3(e,8);return t.filter(e=>tS(e,i)).length+a.filter(e=>tS(e,o)).length+s.filter(t=>(function(e,t){let[a,s]=[t.x+t.width/2,t.y+t.height/2],l=Math.max(e.x,Math.min(a,e.x+e.width))-a,i=Math.max(e.y,Math.min(s,e.y+e.height))-s,[o,r]=[Math.abs(l)/(t.width/2),Math.abs(i)/(t.height/2)];return"diamond"===t.shape?o+r<1:"ellipse"===t.shape||"circle"===t.shape?o*o+r*r<1:o<1&&r<1})(e,t)).length+l.filter(e=>r2(i,e)).length})(r3(r0(a,e),s),r[t],g,n,[...i,...d.map(e=>e.box)]),f=s,m=u(s);if(m>0)for(let t of r4(a.points,e)){let e=u(t);if(e<m&&([f,m]=[t,e]),0===m)break}else l&&r5(r0(s,e),r[t],g)&&(f=r4(a.points,e).find(a=>0===u(a,6)&&!r5(r0(a,e),r[t],g))??s);o+=m,h[t]=f,d.push({box:r0(f,e),index:t})}for(let[a,s]of e.entries()){let l=h[a];if(!s.label||!l)continue;let o=[`branch:${s.edgeId}`];i.push({type:"text",id:`${s.id}:label`,text:s.label,fontSize:13,x:l.x,y:l.y,maxWidth:oD(t[a]?.source.kind)?80:160,groupIds:o}),e[a]={...s,groupIds:o}}return{labels:i,touches:o}}function r8(e,t){let a=new Map([["horizontal",[]],["vertical",[]]]);for(let t of e)a.get(t.orientation).push(t);for(let e of a.values())e.sort((e,t)=>e.staticCoordinate-t.staticCoordinate);return(e,s)=>{let l=a.get(e.orientation),i=Math.max(t,.02),o=0,r=l.length;for(;o<r;){let t=o+r>>1;l[t].staticCoordinate<e.staticCoordinate-i?o=t+1:r=t}let n=0,c=0;for(let a=o;a<l.length&&l[a].staticCoordinate<=e.staticCoordinate+i;a+=1){let i=l[a];i.arrowId!==s&&(tA(e,i)?n+=1:Math.abs(i.staticCoordinate-e.staticCoordinate)<t&&tB(e,i)>.01&&(c+=1))}return{beside:c,overlaps:n}}}function r9(e){return e.every((t,a)=>0===a||.01>=Math.abs(t.x-e[a-1].x)||.01>=Math.abs(t.y-e[a-1].y))}function ne(e,t,a,s,l,i=e.map((e,t)=>t),o=new Map){var r;let n=[...r1(e,a),...e.filter(rf).map(e=>{let{start:t,end:s}=rS(e,a),l=rt([t,s,rD(t,e.sourceEdge,rN(e,t,36)),rD(s,e.targetEdge,rj(e.target,s,e.targetEdge,36))].map(e=>({...e,width:0,height:0})));return ra(`loop:${e.edge.id}`,r3(l,9))})],c="orthogonal"===t?e.flatMap(e=>{let{start:t,end:s}=rS(e,a),l={type:"arrow",id:`edge:${e.edge.id}`,edgeId:e.edge.id,sourceNodeId:e.edge.source,targetNodeId:e.edge.target};return[{...l,endArrowhead:null,points:[t,rD(t,e.sourceEdge,rN(e,t,36))]},{...l,points:[rD(s,e.targetEdge,rj(e.target,s,e.targetEdge,36)),s]}]}):[],d=(r=l.groups,(r?.frames??[]).map(e=>{let{x:t,y:a,width:s,height:l}=e.box;return{type:"arrow",id:`${ri}${e.id}`,edgeId:`${ri}${e.id}`,sourceNodeId:"",targetNodeId:"",endArrowhead:null,points:[{x:t,y:a},{x:t+s,y:a},{x:t+s,y:a+l},{x:t,y:a+l},{x:t,y:a}]}})),p=[];for(let r of i.map(t=>e[t])){let e=o.get(r.edge.id);if(e){p.push(e);continue}p.push(function(e,t,a,s,l,i){let{edge:o}=e,{start:r,end:n}=rS(e,a),c="orthogonal"===t?function(e,t,a,s,l,{avoidCrossings:i,readerScale:o,guided:r,bandOf:n}){let c=Math.abs(a.x-t.x)>=Math.abs(a.y-t.y),d=new Set([e.source.nodeId,e.target.nodeId]),p=n?.get(e.source.nodeId),h=void 0===p?s:s.filter(e=>n.get(e.nodeId)===p),g=Math.min(...h.map(e=>e.x)),u=Math.max(...h.map(e=>e.x+e.width)),f=Math.min(...h.map(e=>e.y)),m=Math.max(...h.map(e=>e.y+e.height)),v="left"===e.sourceEdge||"left"===e.targetEdge||rc(e.target).x<rc(e.source).x,y=rc(e.target).y<rc(e.source).y,w=18*e.index,x=g-56-w,b=u+56+w,k=f-48-w,M=m+48+w,C=e.index%4*18/2,z=Math.min(e.source.x,e.target.x)-56-C,_=Math.max(e.source.x+e.source.width,e.target.x+e.target.width)+56+C,L=Math.min(e.source.y,e.target.y)-48-C,B=Math.max(e.source.y+e.source.height,e.target.y+e.target.height)+48+C,A=36+e.index%4*18,S=void 0===o?[A]:[...new Set([A,36])],P=(s,l)=>{let i=l>0?rD(t,e.sourceEdge,rN(e,t,36)):t,o=l>0?rD(a,e.targetEdge,rj(e.target,a,e.targetEdge,l)):a;return rq([t,i,{x:s,y:i.y},{x:s,y:o.y},o,a])},V=(s,l)=>{let i=l>0?rD(t,e.sourceEdge,rN(e,t,36)):t,o=l>0?rD(a,e.targetEdge,rj(e.target,a,e.targetEdge,l)):a;return rq([t,i,{x:i.x,y:s},{x:o.x,y:s},o,a])},H=[[y?L:B,V],[y?B:L,V],[y?k:M,V],[y?M:k,V]],q=[[v?z:_,P],[v?_:z,P],[v?x:b,P],[v?b:x,P]],[F,I]=c?[H,q]:[q,H],E=[...F.slice(0,2),...I.slice(0,2),...F.slice(2),...I.slice(2)],O=rD(t,e.sourceEdge,rN(e,t,36)),U=rD(a,e.targetEdge,rj(e.target,a,e.targetEdge,36)),X=[...void 0===e.lane?[]:S.map(t=>"top"===e.sourceEdge||"bottom"===e.sourceEdge?P(e.lane,t):V(e.lane,t)),rq([t,a]),rq([t,O,{x:O.x,y:U.y},U,a]),rq([t,O,{x:U.x,y:O.y},U,a]),...E.flatMap(([e,t])=>S.map(a=>t(e,a)))],Y=function(e,t,a=!1){return{...void 0===t?{}:{...a?{crossings:function(e){let t={horizontal:[],vertical:[]};for(let a of e){if(a.id.startsWith(ri))continue;let e=np(a.points);for(let s=0;s+1<e.length;s+=1){let[l,i]=[e[s],e[s+1]],o=.01>=Math.abs(l.y-i.y);if(!o&&Math.abs(l.x-i.x)>.01)continue;let[r,n]=o?[l.x,i.x]:[l.y,i.y];.01>=Math.abs(n-r)||t[o?"horizontal":"vertical"].push({arrowId:a.id,at:o?l.y:l.x,min:Math.min(r,n),max:Math.max(r,n)})}}for(let e of Object.values(t))e.sort((e,t)=>e.at-t.at);let a=(e,a,s,l,i,o)=>{let r=t["horizontal"===e?"vertical":"horizontal"],n=0,c=r.length;for(;n<c;){let e=n+c>>1;r[e].at<=s+.01?n=e+1:c=e}let d=0;for(let e=n;e<r.length;e+=1){let t=r[e];if(o?t.at>l+.01:t.at>=l-.01)break;t.arrowId!==i&&a>t.min+.01&&a<t.max-.01&&(d+=1)}return d};return{step:(e,t,s,l,i)=>a(e,t,Math.min(s,l),Math.max(s,l),i,!0),route:(e,t)=>{let s=np(e),l=0;for(let e=0;e+1<s.length;e+=1){let[i,o]=[s[e],s[e+1]],r=.01>=Math.abs(i.y-o.y);if(!r&&Math.abs(i.x-o.x)>.01)continue;let[n,c]=r?[Math.min(i.x,o.x),Math.max(i.x,o.x)]:[Math.min(i.y,o.y),Math.max(i.y,o.y)];l+=a(r?"horizontal":"vertical",r?i.y:i.x,n,c,t,!1)}return l}}}(e)}:{},quality:tN(e.map(e=>({id:e.id,points:e.points,sourceId:e.sourceNodeId,targetId:e.targetNodeId,endArrowhead:null!==e.endArrowhead})),t)},outlines:rY(e.filter(e=>e.id.startsWith(ri))),segments:rY(e)}}(l,o,i),T=r$(X,s,d,e,Y),Z=void 0===o?0:24/o,G=Z?r$([T,...function(e,t,a,s){let l=`edge:${a.edge.id}`,i=[];for(let a of tL(e))if(!a.isFirstSegment&&!a.isLastSegment){for(let o of t)if(!(o.arrowId===l||o.orientation!==a.orientation||Math.abs(o.staticCoordinate-a.staticCoordinate)>=s||.01>=tB(a,o)))for(let t of[o.staticCoordinate-s-1,o.staticCoordinate+s+1]){let s=e.map((e,s)=>s===a.segmentIndex||s===a.segmentIndex+1?"horizontal"===a.orientation?{x:e.x,y:t}:{x:t,y:e.y}:e);i.push(rq(s))}}return i}(T,Y.segments,e,Z)],s,d,e,Y):T,D=rO(G,s,d)||rZ(G,e)||rT(G,Y.segments,e)||rR(G,Y.outlines);if(D||Y.quality?.({id:`edge:${e.edge.id}`,points:G,sourceId:e.edge.source,targetId:e.edge.target}).corridors){let i=function(e,t,a,s,l,i,o,r,n,c=0,d=1/0,p=!0,h){let g,u,f,m,v=e=>[...new Set([18,Math.max(18,c+1)])].flatMap(t=>[e-t,e+t]),y=[...new Set([a.x,s.x,...l.flatMap(e=>[e.x-18,e.x+e.width+18]),...o.flatMap(e=>e.points.flatMap(e=>v(e.x)))])].sort((e,t)=>e-t),w=[...new Set([a.y,s.y,...l.flatMap(e=>[e.y-18,e.y+e.height+18]),...o.flatMap(e=>e.points.flatMap(e=>v(e.y)))])].sort((e,t)=>e-t),x=(e,t,a)=>(e*w.length+t)*2+a,b=`edge:${i.edge.id}`,k=r8(r,c),M=n.length>0?r8(n,8):void 0,C=[...tL([e,a]),...tL([s,t])],z=(e,t)=>p?Math.abs(y[e]-s.x)+Math.abs(w[t]-s.y):0,_=y.indexOf(a.x),L=w.indexOf(a.y),B={x:_,y:L,axis:+(e.x===a.x),cost:0,estimate:z(_,L)},A=(g=[],u=0,f=(e,t)=>e.item.estimate<t.item.estimate||e.item.estimate===t.item.estimate&&e.order>t.order,m=(e,t)=>{[g[e],g[t]]=[g[t],g[e]]},{get size(){return g.length},push(e){g.push({item:e,order:u++});for(let e=g.length-1;e>0;){let t=e-1>>1;if(!f(g[e],g[t]))break;m(e,t),e=t}},pop(){let e=g[0],t=g.pop();if(g.length>0){g[0]=t;for(let e=0;;){let t=2*e+1,a=t+1,s=e;if(t<g.length&&f(g[t],g[s])&&(s=t),a<g.length&&f(g[a],g[s])&&(s=a),s===e)break;m(e,s),e=s}}return e.item}});A.push(B);let S=new Map([[x(B.x,B.y,B.axis),0]]),P=new Map;for(let a=0;A.size&&a<d;a+=1){let a=A.pop();if(a.cost!==S.get(x(a.x,a.y,a.axis)))continue;let i={x:y[a.x],y:w[a.y]};if(i.x===s.x&&i.y===s.y){let s=[];for(let e=a;e;e=e.previous)s.unshift({x:y[e.x],y:w[e.y]});return rq([e,...s.filter((e,t)=>0===t||t===s.length-1||(s[t-1].x!==e.x||e.x!==s[t+1].x)&&(s[t-1].y!==e.y||e.y!==s[t+1].y)),t])}for(let[e,t,s]of[[-1,0,0],[1,0,0],[0,-1,1],[0,1,1]]){let o=a.x+e,r=a.y+t;if(o<0||r<0||o>=y.length||r>=w.length)continue;let n={x:y[o],y:w[r]},c=(Math.min(o,a.x)*w.length+Math.min(r,a.y))*2+s;if(!P.has(c)){let e=tL([i,n],0)[0],t=tL([i,n])[0],{beside:a,overlaps:s}=t?k(t,b):{beside:0,overlaps:0},o=t&&M?M(t,b):void 0;P.set(c,l.some(t=>tS(e,t))||C.some(t=>tA(e,t))?void 0:Math.abs(n.x-i.x)+Math.abs(n.y-i.y)+1e4*s+1e3*a+(o?(o.beside+o.overlaps)*1e3:0)+(h&&t?320*h.step(t.orientation,t.staticCoordinate,t.min,t.max,b):0))}let d=P.get(c);if(void 0===d)continue;let p=a.cost+d+24*(s!==a.axis),g=x(o,r,s);p>=(S.get(g)??1/0)||(S.set(g,p),A.push({x:o,y:r,axis:s,cost:p,estimate:p+z(o,r),previous:a}))}}}(t,a,O,U,s,e,l,Y.segments,Y.outlines,D?0:Z,D?1/0:5e3,r,Y.crossings);if(i)return r$([G,i],s,d,e,Y)}return G}(e,r,n,s,l,i):rq([r,n]);return{type:"arrow",id:`edge:${o.id}`,edgeId:o.id,sourceNodeId:o.source,targetNodeId:o.target,points:c,...o.label?{label:o.label}:{}}}(r,t,a,[...s,...n.filter(e=>e.nodeId!==`branch-label:${r.edge.id}`&&e.nodeId!==`loop:${r.edge.id}`),...function(e,t){if(!e)return[];let a=e.groupOf.get(t.source.nodeId),s=e.groupOf.get(t.target.nodeId);return e.frames.flatMap(e=>{let t=ra(`group-label:${e.id}`,e.labelBox);if(e.id===a&&e.id===s){let{x:a,y:s,width:l,height:i}=e.box;return[t,ra(`group-wall:${e.id}:top`,{x:a-4,y:s-4,width:l+8,height:4}),ra(`group-wall:${e.id}:bottom`,{x:a-4,y:s+i,width:l+8,height:4}),ra(`group-wall:${e.id}:left`,{x:a-4,y:s-4,width:4,height:i+8}),ra(`group-wall:${e.id}:right`,{x:a+l,y:s-4,width:4,height:i+8})]}return e.id===a||e.id===s?[t]:[t,ra(e.elementId,e.box)]})}(l.groups,r)],[...d,...c,...p],l))}return e.map(e=>p.find(t=>t.edgeId===e.edge.id))}function nt(e,t,a,s,l){let i=oW(a),o=new Set(e.flatMap(e=>[ru(e.source.nodeId,e.sourceEdge),ru(e.target.nodeId,e.targetEdge)])),r=[];for(let[a,n]of t.entries()){let c=e[a];if(i.has(c.edge.id)||!("hooked"===l?tj([{id:n.id,points:n.points}],s).some(e=>"endpoint-jog"===e.kind&&"end"===e.endpoint):t.some(e=>e!==n&&nh(n.points,e.points,n.points.length-3,!1)>0)))continue;let d=tL(n.points),p=d.at(-1),h=d.findLast(e=>e.orientation!==p?.orientation);if(!p||!h)continue;let g=n.points[h.segmentIndex],u=n.points[h.segmentIndex+1],f="horizontal"===h.orientation?u.x>g.x?"left":"right":u.y>g.y?"top":"bottom";f===c.targetEdge||o.has(ru(c.target.nodeId,f))||(r.push({route:c,side:c.targetEdge}),o.add(ru(c.target.nodeId,f)),c.targetEdge=f)}return r}function na(e,t,a){let s=e.flatMap(e=>tL(e.points).map(t=>{let a=e.points[t.segmentIndex],s=e.points[t.segmentIndex+1];return{...t,arrowId:e.id,startBindingId:e.sourceNodeId,endBindingId:e.targetNodeId,from:"horizontal"===t.orientation?a.x:a.y,to:"horizontal"===t.orientation?s.x:s.y}})),l=[];for(let[e,a]of s.entries()){for(let t of s.slice(e+1)){if(a.arrowId===t.arrowId||!tA(a,t))continue;let e=a.isFirstSegment&&t.isFirstSegment&&a.startBindingId===t.startBindingId;tP(a,t)&&.01>=Math.abs((e?a.from:a.to)-(e?t.from:t.to))&&Math.sign(a.to-a.from)===Math.sign(t.to-t.from)||l.push([a.arrowId,t.arrowId])}for(let e of t)e.nodeId!==a.startBindingId&&e.nodeId!==a.endBindingId&&tS(a,e)&&l.push([a.arrowId])}return a?[...l,...function(e,t){let a=[],s=t.frames.map(e=>ro(e.box));for(let l of e){let e=tL(l.points),i=t.groupOf.get(l.sourceNodeId),o=t.groupOf.get(l.targetNodeId);for(let[r,n]of t.frames.entries()){let t=n.id===i||n.id===o;(e.some(e=>tS(e,n.labelBox)||!t&&tS(e,n.box)||s[r].some(t=>t.orientation===e.orientation&&8>Math.abs(t.staticCoordinate-e.staticCoordinate)&&tB(t,e)>8))||n.id===i&&n.id===o&&l.points.some(e=>!rr(e,n.box)))&&a.push([l.id])}}return a}(e,a)]:l}function ns(e,t){let a=new Map(t.map(e=>[e.nodeId,e])),s=0;for(let t of e)for(let[e,l,i]of[[t.sourceNodeId,t.points[0],t.points[1]],[t.targetNodeId,t.points.at(-1),t.points.at(-2)]]){let t=a.get(e);if(!t||!l||!i)continue;let o=(l.x+(i.x-l.x)*1e-4-rc(t).x)/(t.width/2),r=(l.y+(i.y-l.y)*1e-4-rc(t).y)/(t.height/2);("diamond"===t.shape?Math.abs(o)+Math.abs(r):"ellipse"===t.shape||"circle"===t.shape?Math.hypot(o,r):Math.max(Math.abs(o),Math.abs(r)))<1-1e-6&&(s+=1)}return s}function nl(e){return e.flatMap(e=>{if("arrow"===e.type||"line"===e.type)return[...e.points];if("text"===e.type){if(e.containerId)return[];let t=(e.maxWidth??e.text.length)/2,a=e.text.split("\n").length*e.fontSize*1.35/2;return[{x:e.x-t,y:e.y-a},{x:e.x+t,y:e.y+a}]}return[{x:e.x,y:e.y},{x:e.x+e.width,y:e.y+e.height}]})}function ni(e,t,a){return{x:e.x+t,y:e.y+a}}let no={ports:!1,reader:!1,sides:!1,repair:!1};function nr(e){let{edgeArrows:t,groups:a,nodeShapes:s,routedEdges:l}=e,i=new Set;if(!a)return i;let o=new Map(t.map(e=>[e.id,e]));for(let e of na(t,s,a))for(let t of e){let e=o.get(t);for(let t of e?[e.sourceNodeId,e.targetNodeId]:[]){let e=a.groupOf.get(t);void 0!==e&&i.add(e)}}let r=r6([...t],l,s,a,!1),n=a.frames.flatMap(e=>ro(e.box));for(let e of r){let t=o.get(e.id.slice(0,-6)),s=t?a.groupOf.get(t.sourceNodeId):void 0;if(void 0===s)continue;let l=r0(e,rJ(e.text,e.maxWidth??160));(n.some(e=>tS(e,l))||a.frames.some(e=>r2(l,e.labelBox)))&&i.add(s)}return i}function nn(e,t,a=o6){let s=nc(e,t,a,new Map);if(!s.groups)return s;let l=e=>na(e.edgeArrows,e.nodeShapes,e.groups).length+nr(e).size,i=new Map,o=l(s);for(let r=0;r<3&&o>0;r+=1){let r=nr(s);if(0===r.size)break;let n=nc(e,t,a,i=new Map([...i,...[...r].map(e=>[e,(i.get(e)??0)+36])])),c=l(n);c<o&&([s,o]=[n,c])}return s}function nc(e,t,a,s){let l,i,o="orthogonal"===e.layout.edgeRouting,r=e=>t.ports?rB(e,t.repair,a.crossingRepair):rw(e,t.repair),{wrap:n}=a,{groups:c,nodes:d}=re(e,new Map,new Map,a,s),{direction:p}=e.layout,h=e=>a.groupsAcross?c?.groupOf.get(e):void 0,g=e=>void 0===h(e)?p:o7[p],u=e=>void 0!==h(e.source)&&h(e.source)===h(e.target)?o7[p]:p,f=new Map([...d,...rs(c)].map(e=>[e.nodeId,e])),m=e.edges.map((e,t)=>(function(e,t,a,s,l=!1){let i=a.get(e.source),o=a.get(e.target);if(!i||!o)throw Error(`Cannot render edge "${e.id}" with unresolved nodes.`);let{sourceEdge:r,targetEdge:n}=l?{sourceEdge:o3[s],targetEdge:rb[o3[s]]}:rd(i,o,s);return{edge:e,index:t,source:i,sourceEdge:r,target:o,targetEdge:n}})(e,t,f,u(e),n.continuations.has(e.id))),v=o&&t.ports;for(let e of new Set(m.map(e=>g(e.source.nodeId))))rW(m.filter(t=>g(t.source.nodeId)===e),e,v);if(o){for(let t of(!function(e,t){let a=new Map;for(let s of e.filter(rf)){let l=t(s),i=rb[o3[l]],o=t=>e.filter(e=>!rf(e)&&(e.source===s.source&&e.sourceEdge===t||e.target===s.source&&e.targetEdge===t)).length,r=[..."TB"===l||"BT"===l?["right","left"]:["bottom","top"]].sort((e,t)=>o(e)-o(t)),n=[...r.map(e=>[e,i]),...r.map(e=>[e,o3[l]])],c=a.get(s.source.nodeId)??new Set,[d,p]=n.find(([e,t])=>!c.has(`${e}:${t}`))??n[0];c.add(`${d}:${p}`),a.set(s.source.nodeId,c),s.sourceEdge=d,s.targetEdge=p}}(m,e=>u(e.edge)),!function(e,t,a=()=>t.layout.direction){let s=oW(t);for(let t of e.filter(e=>s.has(e.edge.id)&&!rf(e))){let s=a(t),l="LR"===s||"RL"===s,i=l?rc(t.source).y<rc(t.target).y:rc(t.source).x<rc(t.target).x,o=[...l?i?["top","bottom"]:["bottom","top"]:i?["left","right"]:["right","left"],...l?["left","right"]:["top","bottom"]],r=new Set(e.filter(e=>e!==t&&e.source===t.target).map(e=>e.sourceEdge)),n=new Set(e.filter(e=>e!==t&&e.target===t.source).map(e=>e.targetEdge)),c=new Set(e.filter(e=>e!==t&&e.target===t.target).map(e=>e.targetEdge)),d=new Set(e.filter(e=>e!==t&&e.source===t.source).map(e=>e.sourceEdge)),p=oD(t.source.kind)?[t.sourceEdge,...o]:o;t.targetEdge=o.find(e=>!r.has(e)&&!c.has(e))??o.find(e=>!r.has(e))??t.targetEdge,t.sourceEdge=p.find(e=>!n.has(e)&&(!oD(t.source.kind)||!d.has(e))&&(t.source!==t.target||e!==t.targetEdge))??t.sourceEdge}}(m,e,e=>u(e.edge)),nx.get(e)?.pairedReturns&&function(e,t,a,s){for(let l of e){if(!t.has(l.edge.id)||rf(l))continue;let i=e.find(e=>void 0===e.pair&&!t.has(e.edge.id)&&e.source===l.target&&e.target===l.source&&e.targetEdge===rb[e.sourceEdge]);if(!i)continue;let[o,r]=[rc(l.source),rc(l.target)],n=new Set([l.source.nodeId,l.target.nodeId]),c=new Set([...n].map(e=>s?.groupOf.get(e)??e));[...a.filter(e=>!n.has(e.nodeId)),...(s?.frames??[]).filter(e=>!c.has(e.id)).map(e=>ra(e.elementId,e.box))].some(e=>rP(o,r,e))||(l.sourceEdge=i.targetEdge,l.targetEdge=i.sourceEdge,i.pair=-1,l.pair=1)}}(m,oW(e),d,c),m)){let e=a.sides?.get(t.edge.id);e?.sourceEdge&&(t.sourceEdge=e.sourceEdge),e?.targetEdge&&(t.targetEdge=e.targetEdge)}l=r(m),i=function(e,t){let a=new Map;for(let s of e)for(let e of["source","target"]){let l=s[e];if(void 0!==oG(l))continue;let i="source"===e?s.sourceEdge:s.targetEdge,o="top"===i||"bottom"===i?"width":"height",r=2*(16+Math.abs(t.get(rg({edgeId:s.edge.id,endpoint:e}))??0));if(r<=(a.get(l.nodeId)?.[o]??l[o]))continue;let n=a.get(l.nodeId)??{width:l.width,height:l.height};n[o]=r,a.set(l.nodeId,"choice"!==l.kind||l.label?n:oZ(n,0))}return a}(m,l)}else{let a=rH(m,e,d,t.repair);l=a.offsets,i=a.minimumSizes}let y=o&&(t.repair||c)?function(e,t){let a=new Map;for(let s of e){let{start:e,end:l}=rS(s,t);for(let[t,i,o]of[[s.source,s.sourceEdge,rN(s,e,36)],[s.target,s.targetEdge,rj(s.target,l,s.targetEdge,36)]]){let r=rD(t===s.source?e:l,i,o),n="left"===i?t.x-r.x:"right"===i?r.x-t.x-t.width:"top"===i?t.y-r.y:r.y-t.y-t.height,c=ru(t.nodeId,i);a.set(c,Math.max(a.get(c)??0,n))}if(s.edge.label&&rf(s)){let t=s.source,l=r0(rQ(s,e),rK(s.edge.label,oD(t.kind)));for(let[e,s]of[["left",t.x-l.x],["right",l.x+l.width-t.x-t.width],["top",t.y-l.y],["bottom",l.y+l.height-t.y-t.height]]){let l=ru(t.nodeId,e);s>0&&a.set(l,Math.max(a.get(l)??0,s))}}}return a}(m,l):new Map;if(i.size>0||y.size>0){({groups:c,nodes:d}=re(e,i,y,a,s));let n=new Map([...d,...rs(c)].map(e=>[e.nodeId,e]));for(let t of m)t.source=n.get(t.source.nodeId),t.target=n.get(t.target.nodeId),o||Object.assign(t,rd(t.source,t.target,e.layout.direction));o?l=r(m):(rW(m,e.layout.direction,v),l=rH(m,e,d,t.repair).offsets)}d=function(e,t,a,s){let l=new Map;for(let i of t){if(void 0===oG(i))continue;let o=e.filter(e=>e.source===i||e.target===i),r=o[0];if(1!==o.length||!r||rf(r))continue;let n=r.source===i?"target":"source",c=r[n],d="source"===n?r.sourceEdge:r.targetEdge;if(("source"===n?r.targetEdge:r.sourceEdge)!==rb[d])continue;let p=rC(d),h="x"===p?"width":"height",g=rh(c,d,s.get(rg({edgeId:r.edge.id,endpoint:n}))??0),u={...i,[p]:g[p]-i[h]/2},f=r3(u,18),m=a?.groupOf.get(i.nodeId),v=a?.frames.find(e=>e.id===m);t.every(e=>e===i||!r2(f,l.get(e.nodeId)??e))&&(a?.frames??[]).every(e=>e===v||!r2(f,e.box)&&!r2(f,e.labelBox))&&(!v||f.x>=v.box.x&&f.y>=v.box.y&&f.x+f.width<=v.box.x+v.box.width&&f.y+f.height<=v.box.y+v.box.height)&&l.set(i.nodeId,u)}if(0===l.size)return t;for(let t of e)t.source=l.get(t.source.nodeId)??t.source,t.target=l.get(t.target.nodeId)??t.target;return t.map(e=>l.get(e.nodeId)??e)}(m,d,c,l),function(e,t,a){for(let s of e){if(!a.continuations.has(s.edge.id))continue;let e=a.bandOf.get(s.source.nodeId)??0,l="top"===s.sourceEdge||"bottom"===s.sourceEdge?"x":"y",i="x"===l?"width":"height",o=e=>t.filter(t=>(a.bandOf.get(t.nodeId)??0)===e);s.lane=(Math.max(...o(e).map(e=>e[l]+e[i]))+Math.min(...o(e+1).map(e=>e[l])))/2}}(m,d,n);let w=[...d,...rl(c)],x=tX({width:Math.max(...w.map(e=>e.x+e.width))-Math.min(...w.map(e=>e.x)),height:Math.max(...w.map(e=>e.y+e.height))-Math.min(...w.map(e=>e.y))}),b={guided:t.repair,...t.reader?{readerScale:x}:{},...n.continuations.size>0?{bandOf:n.bandOf}:{},...c?{groups:c}:{},...a.avoidCrossings?{avoidCrossings:!0}:{}},k=ne(m,e.layout.edgeRouting,l,d,b);if(o&&t.sides){let t=nt(m,k,e,x,"hooked");if(t.length>0){let e=r(m),a=ne(m,"orthogonal",e,d,b),[s,i]=[k,a].map(e=>{var t,a;let s;return t=d,a=c,s=tj(e.map(e=>({id:e.id,points:e.points,sourceId:e.sourceNodeId,targetId:e.targetNodeId})),x).length,{hard:na(e,t,a).length,reader:s}});if(i.hard<=s.hard&&i.reader<s.reader)[k,l]=[a,e];else for(let{route:e,side:a}of t)e.targetEdge=a}let s=a.crossingRepair?nt(m,k,e,x,"crossed"):[];if(s.length>0){let e=r(m),t=ne(m,"orthogonal",e,d,b);if(na(t,d,c).length<=na(k,d,c).length&&nf({edgeArrows:t,...c?{groups:c}:{},nodeShapes:d},{edgeArrows:k,...c?{groups:c}:{},nodeShapes:d},!0,!1))[k,l]=[t,e];else for(let{route:e,side:t}of s)e.targetEdge=t}}return o&&t.repair&&(k=function(e,t,a,s,l){let i=na(e,s,l.groups),o=t.map((e,t)=>t);for(let r=0;r<4&&i.length>0;r+=1){let r=e=>o.findIndex(a=>`edge:${t[a].edge.id}`===e),[n,c]=i[0],[d,p]=void 0===c?[0,r(n)]:[Math.min(r(n),r(c)),Math.max(r(n),r(c))];if(p<=d)break;let h=[...o];h.splice(d,0,...h.splice(p,1));let g=ne(t,"orthogonal",a,s,l,h),u=na(g,s,l.groups);if(u.length>=i.length)break;[e,i,o]=[g,u,h]}return e}(k,m,l,d,b)),{edgeArrows:k,...c?{groups:c}:{},nodeShapes:d,portOffsets:l,routeOptions:b,routedEdges:m}}function nd(e,t,a=[]){let s=[...e.flatMap(e=>[{x:e.x,y:e.y},{x:e.x+e.width,y:e.y+e.height}]),...t.flatMap(e=>e.points),...a.flatMap(e=>{let{width:t,height:a}=rJ(e.text,e.maxWidth??160);return[{x:e.x-t/2,y:e.y-a/2},{x:e.x+t/2,y:e.y+a/2}]})];return{width:Math.max(...s.map(e=>e.x))-Math.min(...s.map(e=>e.x)),height:Math.max(...s.map(e=>e.y))-Math.min(...s.map(e=>e.y))}}function np(e){return e.filter((t,a)=>{let[s,l]=[e[a-1],e[a+1]];return!s||!l||!(.01>=Math.abs(s.x-t.x)&&.01>=Math.abs(t.x-l.x)||.01>=Math.abs(s.y-t.y)&&.01>=Math.abs(t.y-l.y))})}function nh(e,t,a=0,s=!0){let l=s?np(e.slice(Math.max(0,a))):e.slice(Math.max(0,a)),i=s?np(t):t,o=(e,t,a)=>e>Math.min(t,a)+.01&&e<Math.max(t,a)-.01,r=(e,t)=>.01>=Math.abs(e.y-t.y)&&Math.abs(e.x-t.x)>.01,n=(e,t)=>.01>=Math.abs(e.x-t.x)&&Math.abs(e.y-t.y)>.01,c=0;for(let e=0;e<l.length-1;e+=1)for(let t=0;t<i.length-1;t+=1){let[a,s,d,p]=[l[e],l[e+1],i[t],i[t+1]],[h,g]=r(a,s)&&n(d,p)?[[a,s],[d,p]]:n(a,s)&&r(d,p)?[[d,p],[a,s]]:[];h&&g&&o(g[0].x,h[0].x,h[1].x)&&o(h[0].y,g[0].y,g[1].y)&&(c+=1)}return c}function ng(e,t=!0){return e.reduce((a,s,l)=>a+e.slice(l+1).reduce((e,a)=>e+nh(s.points,a.points,0,t),0),0)}function nu(e,t){let a=tX(nd(t,e)),s=e.map(e=>({id:e.id,points:e.points,sourceId:e.sourceNodeId,targetId:e.targetNodeId})),l=tN(s,a);return tj(s,a).length+s.filter(e=>l(e).arrowheadsCrossed>0).length}function nf(e,t,a=!1,s=!0,l=!1){let[i,o]=[e,t].map(e=>ng(e.edgeArrows,s)),[r,n]=[e,t].map(e=>nd([...e.nodeShapes,...rl(e.groups)],e.edgeArrows)),[c,d]=[r,n].map(({width:e,height:t})=>o8(e,t));return(a?i<o:i<=o)&&(c<2.45||c<=d+.01||l&&(({width:e,height:t})=>Math.max(e,t))(r)<=(({width:e,height:t})=>Math.max(e,t))(n)+.01)&&nu(e.edgeArrows,[...e.nodeShapes,...rl(e.groups)])<=nu(t.edgeArrows,[...t.nodeShapes,...rl(t.groups)])}function nm(e){return e.edgeArrows.filter((t,a)=>{let s=e.routedEdges[a],l=tL(np(t.points)).slice(1,-1);return["source","target"].some(e=>{let t=s[e],a="source"===e?s.sourceEdge:s.targetEdge;return l.some(e=>{let[s,l,i,o]="horizontal"===e.orientation?[t.y,t.height,t.x,t.width]:[t.x,t.width,t.y,t.height],r=e.staticCoordinate<s?s-e.staticCoordinate:e.staticCoordinate-s-l;return("horizontal"===e.orientation?e.staticCoordinate<s?"top":"bottom":e.staticCoordinate<s?"left":"right")!==a&&r>0&&r<72&&e.min<i+o&&e.max>i})})}).length}function nv(e){let t=e.map(e=>np(e.points)),a=[],s=(e,t,a)=>e>Math.min(t,a)+.01&&e<Math.max(t,a)-.01;for(let[e,l]of t.entries())for(let[i,o]of t.slice(e+1).entries())for(let t=0;t+1<l.length;t+=1)for(let r=0;r+1<o.length;r+=1){let[n,c,d,p]=[l[t],l[t+1],o[r],o[r+1]],[h,g]=.01>=Math.abs(n.y-c.y)&&.01>=Math.abs(d.x-p.x)?[[n,c],[d,p]]:.01>=Math.abs(n.x-c.x)&&.01>=Math.abs(d.y-p.y)?[[d,p],[n,c]]:[];h&&g&&s(g[0].x,h[0].x,h[1].x)&&s(h[0].y,g[0].y,g[1].y)&&a.push({first:e,second:e+1+i,at:{x:g[0].x,y:h[0].y}})}return a}let ny={initial:"circle",final:"circle","final-core":"circle",choice:"diamond"},nw={initial:"Initial state",final:"Final state","final-core":"Final state",choice:"Choice"},nx=new WeakMap;function nb(e){return nk(H(l.svK(S,{errors:"all"})(e)))}function nk(e,t={}){var a;let s,l,i,o,r,n;nx.set(e,t);let c=e=>[na(e.edgeArrows,e.nodeShapes,e.groups).length,ns(e.edgeArrows,e.nodeShapes)],d=(e,t)=>e[0]<t[0]||e[0]===t[0]&&e[1]<t[1],p="orthogonal"===e.layout.edgeRouting?[{ports:!0,reader:!0,sides:!0,repair:!0},{ports:!0,reader:!0,sides:!1,repair:!0},{ports:!0,reader:!1,sides:!1,repair:!0},{ports:!1,reader:!1,sides:!1,repair:!0},no]:[{...no,repair:!0},no],h=(t=>{let[a,...s]=p,l=nn(e,a,t),i=c(l);for(let a of s){if(0===i[0]&&0===i[1])break;let s=nn(e,a,t),o=c(s);d(o,i)&&([l,i]=[s,o])}return{arrangement:t,defects:i,layout:l}})(o6),g=(t,a)=>{let s=nn(e,p[0],t),l=c(s);!d(h.defects,l)&&nf(s,h.layout,a,!1)&&(h={arrangement:t,defects:l,layout:s})},u="orthogonal"===e.layout.edgeRouting,f=u&&e.edges.length<=24;f&&ng(h.layout.edgeArrows,!1)>0&&g({...h.arrangement,crossingRepair:!0},!1),f&&ng(h.layout.edgeArrows,!1)>0&&((s=o1(e))?[s.top,...s.groups.map(e=>e.diagram)]:[e]).some(e=>{let[t,a]=[!1,!0].map(t=>o5(e,new Map,new Map,t).rankMetrics.map(e=>e.shapes.map(e=>e.nodeId).join("\n")).join("\n\n"));return t!==a})&&g({...h.arrangement,reorder:!0},!0);let m=nd([...h.layout.nodeShapes,...rl(h.layout.groups)],h.layout.edgeArrows,[...r6([...h.layout.edgeArrows],h.layout.routedEdges,h.layout.nodeShapes,h.layout.groups,!1)]),v="TB"===e.layout.direction||"BT"===e.layout.direction,[y,w]=v?[m.height,m.width]:[m.width,m.height],x=(y+40)/(w+40),b=28e3/(Math.max(y,w)+40),k=x>=4||x>=2.45&&(v||y>=1200),M=u&&k?function(e,t,a=0){let s;if("orthogonal"!==e.layout.edgeRouting||o1(e))return o4;let{feedbackEdges:l,gapAfter:i,rankByNodeId:o,rankMetrics:r}=o5(e,new Map,new Map,t),n="TB"===e.layout.direction||"BT"===e.layout.direction,c=(e,t)=>r.slice(e,t+1).reduce((e,t)=>e+t.depth,0)+i.slice(e,t).reduce((e,t)=>e+t,0),d=(e,t)=>Math.max(...r.slice(e,t+1).map(e=>e.breadth)),p=r.length-1,h=o8(c(0,p),d(0,p));if(r.length<5||c(0,p)<=d(0,p))return o4;let g=new Map(e.nodes.map(e=>[e.id,e.kind])),u=e=>o.get(e)??0,f=new Map;for(let[t,a]of r.entries()){let s=e.edges.filter(e=>Math.min(u(e.source),u(e.target))<=a.rank&&Math.max(u(e.source),u(e.target))>a.rank),[i]=s;1!==s.length||!i||l.has(i.id)||u(i.source)!==a.rank||u(i.target)!==a.rank+1||oD(g.get(i.source))||f.set(t,i.id)}let m=new Map(e.edges.map(e=>[e.id,e.label])),v=(e,t)=>{let a=m.get(f.get(t)??""),s=a?rK(a):void 0,l=t===p?0:Math.max(36,s?n?Math.max(40,s.height+24):s.width+16:0);return c(e,t)+36*(e>0)+l},y=[...f.keys(),p].sort((e,t)=>e-t),w=e=>{let t,s=(l,i)=>{if(l.length===e-1){if(p<i+2)return;let e=[...l,p],s=e.map((t,a)=>v(0===a?0:e[a-1]+1,t)),o=Math.max(...s);if(Math.min(...s)<a*o)return;let r=s.reduce((e,t)=>e+t**2,0);(!t||o<t.longest||o===t.longest&&r<t.squares)&&(t={ends:e,longest:o,squares:r});return}for(let e of y)e!==p&&e>=i+2&&s([...l,e],e)};return s([],-1),t};for(let e=2;e<=Math.min(6,y.length);e+=1){let t=new Map;for(let e of y)e>=1&&e<p&&t.set(e,{ends:[e],longest:v(0,e),squares:v(0,e)**2});for(let a=2;a<=e;a+=1){let s=new Map;for(let l of y)if(a===e?l===p:l!==p)for(let[e,a]of[...t].reverse()){if(l<e+2)continue;let t=v(e+1,l),i={ends:[...a.ends,l],longest:Math.max(a.longest,t),squares:a.squares+t**2},o=s.get(l);(!o||i.longest<o.longest||i.longest===o.longest&&i.squares<o.squares)&&s.set(l,i)}t=s}let l=a>0?w(e):t.get(p);if(!l)continue;let i=[0,...l.ends.slice(0,-1).map(e=>e+1)].reduce((e,t,a)=>e+d(t,l.ends[a]),0)+(e-1)*144,o=o8(l.longest,i);if((!s||o<s.aspect)&&(s={aspect:o,ends:l.ends}),o<=2)break}if(!s||s.aspect>=h)return o4;let x=new Map,b=0;for(let[e,t]of r.entries()){for(let e of t.shapes)x.set(e.nodeId,b);s.ends.includes(e)&&e!==p&&(b+=1)}return{bandOf:x,continuations:new Set(s.ends.filter(e=>e!==p).map(e=>f.get(e)))}}(e,h.arrangement.reorder,v&&x<4&&b>=14?.6:0):o4;for(let e of f&&!h.arrangement.crossingRepair?[!0,!1]:[h.arrangement.crossingRepair]){if(0===M.continuations.size||h.arrangement.wrap===M)break;g({...h.arrangement,crossingRepair:e,wrap:M},!1)}let C=u&&k&&void 0!==o1(e);for(let e of f&&!h.arrangement.crossingRepair?[!0,!1]:[h.arrangement.crossingRepair]){if(!C||h.arrangement.groupsAcross)break;g({...h.arrangement,crossingRepair:e,groupsAcross:!0},!1)}let z=ng(h.layout.edgeArrows);f&&z>0&&z<=6&&(h=function(e,t,a,s,l){let i=a,o=new Set,[r,n]=[6,24];for(let a=!0;a&&r>0;){a=!1;let c=ng(i.layout.edgeArrows),d=nv(i.layout.edgeArrows).flatMap(({first:t,second:a,at:s})=>(function(e,t,a,s,l,i){let o="TB"===s.layout.direction||"BT"===s.layout.direction,r=o?"y":"x",n=e=>rC(e)===r?rb[e]:e,c=oW(s),d=e=>!rf(e)&&void 0===e.pair,p=e=>"source"===e?"sourceEdge":"targetEdge",h=(e,t,a)=>{if(rC(a)===r)return!0;let s=rc(e[t])[r],l=rc(e["source"===t?"target":"source"])[r];return rk[a][r]*(l-s)>.01},g=[],u=e=>{[...e].every(([e,t])=>{let a=i.find(t=>t.edge.id===e);return h(a,"source",t.sourceEdge??a.sourceEdge)&&h(a,"target",t.targetEdge??a.targetEdge)})&&g.push(e)},f=o?["left","right"]:["top","bottom"];for(let a of[e,t].filter(d))if(c.has(a.edge.id))for(let e of[...f].sort((e,t)=>e===n(a.sourceEdge)?-1:+(t===n(a.sourceEdge))))(a.sourceEdge!==e||a.targetEdge!==e)&&u(new Map([[a.edge.id,{sourceEdge:e,targetEdge:e}]]));if(d(e)&&d(t))for(let a of["source","target"])for(let s of["source","target"]){let[l,i]=[e[p(a)],t[p(s)]];e[a].nodeId===t[s].nodeId&&l!==i&&u(new Map([[e.edge.id,{[p(a)]:i}],[t.edge.id,{[p(s)]:l}]]))}for(let a of new Set([e,t].map(e=>e.source))){if(!oD(a.kind))continue;let e=i.filter(e=>e.source===a&&d(e)&&!c.has(e.edge.id));if(e.length<2||e.length>3)continue;let t=e=>e.length<=1?[[...e]]:e.flatMap((a,s)=>t([...e.slice(0,s),...e.slice(s+1)]).map(e=>[a,...e]));for(let a of t(e.map(e=>e.sourceEdge))){let t=new Map(e.flatMap((e,t)=>a[t]===e.sourceEdge?[]:[[e.edge.id,{sourceEdge:a[t]}]]));t.size>0&&u(t)}}for(let{endpoint:s,route:i}of[e,t].filter(d).flatMap(e=>["source","target"].map(t=>{let{start:s,end:i}=rS(e,l),o="source"===t?s:i;return{endpoint:t,route:e,distance:Math.abs(o.x-a.x)+Math.abs(o.y-a.y)}})).sort((e,t)=>e.distance-t.distance)){let e=i[p(s)],t=rc(i[s]),a=rc(i["source"===s?"target":"source"]);for(let l of new Set([Math.abs(a.x-t.x)>Math.abs(a.y-t.y)?a.x>t.x?"right":"left":a.y>t.y?"bottom":"top",n(e),"top","right","bottom","left"]))l!==e&&u(new Map([[i.edge.id,{[p(s)]:l}]]))}return g})(i.layout.routedEdges[t],i.layout.routedEdges[a],s,e,i.layout.portOffsets??new Map,i.layout.routedEdges)),p=3;for(let h of d){if(0===r||0===p||0===n)break;let d=new Map(i.arrangement.sides);for(let[e,t]of h)d.set(e,{...d.get(e),...t});let g=JSON.stringify([...d].sort(([e],[t])=>e<t?-1:1));if(o.has(g)||(o.add(g),n-=1,function(e,t,a){let{layout:s}=e;if(!s.portOffsets||!s.routeOptions)return 0;let l=s.routedEdges.map(e=>({...e,...t.get(e.edge.id)})),i=a.ports?rB(l,a.repair,e.arrangement.crossingRepair):rw(l,a.repair),o=new Set(l.flatMap(e=>t.has(e.edge.id)||["source","target"].some(t=>{let a=rg({edgeId:e.edge.id,endpoint:t});return i.get(a)!==s.portOffsets.get(a)})?[e.edge.id]:[])),r=(e,t)=>{let a=new Map(e.flatMap(e=>t.has(e.edgeId)?[]:[[e.edgeId,e]])),o=l.map((e,a)=>({index:a,again:t.has(e.edge.id)})).sort((e,t)=>Number(e.again)-Number(t.again)).map(({index:e})=>e);return ne(l,"orthogonal",i,s.nodeShapes,{...s.routeOptions,avoidCrossings:!0},o,a)},n=r(s.edgeArrows,o),c=new Set(nv(n).flatMap(({first:e,second:t})=>{let[a,s]=[l[e].edge.id,l[t].edge.id];return o.has(a)===o.has(s)?[]:[o.has(a)?s:a]}));return 0===c.size?ng(n):Math.min(ng(n),ng(r(n,c)))}(i,h,t)>=c))continue;[r,p]=[r-1,p-1];let u={...i.arrangement,sides:d,avoidCrossings:!0},f=nn(e,t,u),m=s(f);if(!l(i.defects,m)&&nf(f,i.layout,!0,!0,!0)&&nm(f)<=nm(i.layout)){i={arrangement:u,defects:m,layout:f},a=!0;break}}}return i}(e,p[0],h,c,d));let _=u?function(e){let t,{groups:a,nodeShapes:s,routedEdges:l}=e,i=e.edgeArrows,o=[...s,...rl(a)],r=e=>({crossings:ng(e),defects:na(e,s,a).length,findings:nu(e,o),inward:ns(e,s),labels:r7([...e],l,s,a).touches});for(let[a,l]of e.edgeArrows.entries()){let e=new Set([l.sourceNodeId,l.targetNodeId]),o=rU(l.points,s,e);if(0!==o)for(let n of(t??=r(i),function(e,t,a){let s=np(e),l=[];for(let e of tL(s))if(!e.isFirstSegment&&!e.isLastSegment)for(let i of t){if(!rE(i,a)||tS(e,i)||!rI(e,i,12))continue;let[t,o]="horizontal"===e.orientation?[i.y,i.height]:[i.x,i.width];for(let a of[t-12-1,t+o+12+1]){let t=s.map((t,s)=>s===e.segmentIndex||s===e.segmentIndex+1?"horizontal"===e.orientation?{x:t.x,y:a}:{x:a,y:t.y}:t);(function(e,t){if(t.length!==e.length||!r9(t))return!1;let a=(e,t,a)=>({dx:e[a].x-e[t].x,dy:e[a].y-e[t].y}),s=e.length-1;return[[0,1],[s,s-1]].every(([s,l])=>{let[i,o]=[a(e,s,l),a(t,s,l)],r=Math.abs(i.dx)+Math.abs(i.dy);return Math.sign(o.dx)===Math.sign(i.dx)&&Math.sign(o.dy)===Math.sign(i.dy)&&Math.abs(o.dx)+Math.abs(o.dy)>=Math.min(r,36)-.01})})(s,t)&&l.push(rq(t))}}return l}(l.points,s,e))){if(!r9(n)||rU(n,s,e)>=o)continue;let l=i.map((e,t)=>t===a?{...e,points:n}:e),c=r(l);if(c.defects<=t.defects&&c.crossings<=t.crossings&&c.findings<=t.findings&&c.inward<=t.inward&&c.labels<=t.labels){[i,t]=[l,c];break}}}return i===e.edgeArrows?e:{...e,edgeArrows:i}}(h.layout):h.layout,{groups:L,routedEdges:B}=_,A=[..._.edgeArrows],S={arrows:A,frames:[],labels:[..._.nodeShapes.filter(e=>e.label).map(rn),...r6(A,B,_.nodeShapes,L)],nodes:_.nodeShapes},P=L?function(e,t){let a=new Map(e.frames.map(e=>[e.id,e])),s=t=>{let s=e.groupOf.get(t);return void 0===s?void 0:a.get(s)},l=new Map(t.labels.map(e=>[e.id,e])),i=new Map;for(let e of t.arrows){let t=s(e.sourceNodeId);if(!t||t!==s(e.targetNodeId))continue;let a=l.get(`${e.id}:label`),o=a?rJ(a.text,a.maxWidth??160):void 0;(!a||!o||[{x:a.x-o.width/2,y:a.y-o.height/2},{x:a.x+o.width/2,y:a.y+o.height/2}].every(e=>rr(e,t.box)))&&e.points.every(e=>rr(e,t.box))&&i.set(e.id,t.elementId)}let o=new Map(t.nodes.flatMap(e=>{let t=s(e.nodeId);return t?[[e.id,t.elementId]]:[]}));return{arrows:t.arrows.map(e=>{let t=i.get(e.id);return t?{...e,frameId:t}:e}),frames:e.frames.map(t=>({type:"frame",id:t.elementId,name:t.label,...e.composites.has(t.id)?{nodeId:t.id}:{},...t.box})),labels:t.labels.map(e=>{let t=e.containerId?o.get(e.containerId):i.get(e.id.slice(0,-6));return t?{...e,frameId:t}:e}),nodes:t.nodes.map(e=>{let t=o.get(e.id);return t?{...e,frameId:t}:e})}}(L,S):S,{arrows:V,frames:H,labels:q}=P,F=P.nodes.flatMap(t=>(function(e,t){if(e.label)return[e];let a={...e,label:nw[e.kind??""]??"Marker",rendererRole:"state-marker"};if("initial"===e.kind)return[{...a,fillColor:t,fillStyle:"solid"}];if("final"!==e.kind)return[a];let s=[`marker:${e.nodeId}`,...e.groupIds??[]];return[{...a,groupIds:s},{...a,id:`${e.id}:core`,nodeId:`${e.nodeId}:core`,kind:"final-core",groupIds:s,x:e.x+6,y:e.y+6,width:e.width-12,height:e.height-12,fillColor:t,fillStyle:"solid"}]})(t,e.style.accentColor)),I=(r=Math.max(0,48-(o={x:Math.min(...(i=nl(a=[...H,...V,...F,...q])).map(e=>e.x)),y:Math.min(...i.map(e=>e.y))}).x),n=Math.max(0,48-o.y),0===r&&0===n?[...a]:a.map(e=>"arrow"===e.type?{...e,points:function(e,t,a){let[s,...l]=e;return[ni(s,t,a),...l.map(e=>ni(e,t,a))]}(e.points,r,n)}:"line"===e.type?{...e,points:function(e,t,a){let[s,l,...i]=e;return[ni(s,t,a),ni(l,t,a),...i.map(e=>ni(e,t,a))]}(e.points,r,n)}:{...e,x:e.x+r,y:e.y+n})),E={width:Math.max(...(l=nl(I)).map(e=>e.x))+48,height:Math.max(...l.map(e=>e.y))+48},O=[...H.map(e=>e.id),...F.map(e=>e.id),...q.map(e=>e.id),...V.map(e=>e.id)];return{kind:"canvas",version:1,diagramId:e.id,title:e.title,width:E.width,height:E.height,accentColor:e.style.accentColor,backgroundColor:e.style.backgroundColor,elements:I,layers:[],layouts:[],zOrder:O}}function nM(e,t){if(!t.nodeId.endsWith(eA)||t.id!==`node:${t.nodeId}`||"rectangle"!==t.shape||2!==t.width||t.height<120)return!1;let a=t.nodeId.slice(0,-eA.length);if(0===a.length)return!1;let s=e.elements.find(e=>"node"===e.type&&e.id===`node:${a}`&&e.nodeId===a);return!!s&&.01>=Math.abs(t.x+t.width/2-(s.x+s.width/2))&&t.y>=s.y+s.height-.01}let nC=":initial";var nz=a(664);a(3614);var n_=a(1594),nL=a(6297),nB=a(7258),nA=a(2275),nS=a(2860),nP=a(1554),nV=a(4233);let nH=i.Or("effect/Metric/CurrentMetricAttributes",{defaultValue:()=>({})}),nq=i.Or("effect/Metric/MetricRegistry",{defaultValue:()=>new Map}),nF="~effect/Metric";class nI{[nF]=nF;#e;#t="";id;description;attributes;constructor(e,t,a){this.id=e,this.description=t,this.attributes=a}valueUnsafe(e){return this.hook(e).get(e)}modifyUnsafe(e,t){return this.hook(t).modify(e,t)}updateUnsafe(e,t){return this.hook(t).update(e,t)}hook(e){var t;let a,s=i.Jt(e,nH);s!==this.#e&&(this.#e=s,this.#t=(t=this,a=Object.entries(nG(this.attributes,s)).sort((e,t)=>e[0]<t[0]?-1:+(e[0]>t[0])),JSON.stringify([t.type,t.id,t.description,a])));let l=i.Jt(e,nq),o=l.get(this.#t);return nV.b0(o)&&(o={id:this.id,type:this.type,description:this.description,attributes:Object.keys(s).length>0?nG(this.attributes,s):this.attributes,hooks:this.createHooks()},l.set(this.#t,o)),o.hooks}pipe(){return(0,nP.tT)(this,arguments)}}let nE=BigInt(0);class nO extends nI{type="Counter";#a;#s;constructor(e,t){super(e,t?.description,nD(t?.attributes)),this.#a=t?.bigint??!1,this.#s=t?.incremental??!1}createHooks(){let e=this.#a?nE:0,t=this.#s?this.#a?e=>e>=nE:e=>e>=0:e=>!0;return nZ(()=>({count:e,incremental:this.#s}),a=>{t(a)&&(e+=a)})}}class nU extends nI{type;metric;valueUnsafe;updateUnsafe;modifyUnsafe;constructor(e,t,a,s){super(e.id,e.description,e.attributes),this.metric=e,this.valueUnsafe=t,this.updateUnsafe=a,this.modifyUnsafe=s,this.type=e.type}createHooks(){return this.metric.createHooks()}}let nX=(e,t)=>new nO(e,t),nY=(0,n_.XY)(2,(e,t)=>nL.sxi(a=>nL.OH5(()=>e.updateUnsafe(t,a)))),nT=(0,n_.XY)(2,(e,t)=>{var a;let s,l,o=(a=t,l={},e=>{let t=i.Jt(e,nH);return t!==s&&(s=t,l=nG(t,a)),i.WQ(e,nH,l)});return new nU(e,t=>e.valueUnsafe(o(t)),(t,a)=>e.updateUnsafe(t,o(a)),(t,a)=>e.modifyUnsafe(t,o(a)))});function nZ(e,t,a){return{get:e,update:t,modify:a??t}}function nG(e,t){return{...nD(e),...nD(t)}}function nD(e){return nV.EA(e)&&Array.isArray(e)?e.reduce((e,[t,a])=>(nA.x(e,t,a),e),{}):e}nB.F,nB.F,n_.MN;var nR=a(1587),n$=(a(6526),a(719),a(2707));let nj=[["artifactId","sketchi.artifact_id"],["attemptId","sketchi.attempt_id"],["projectId","sketchi.project_id"],["requestId","sketchi.request_id"],["runId","sketchi.run_id"],["scenarioId","sketchi.scenario_id"],["traceId","sketchi.trace_id"]],nN=new Set(["artifact_count","artifact_format","artifact_kind","attempt","cache_mode","duration_ms","error_category","error_tag","failure_category","format_count","method","model","operation","outcome","provider","request_kind","retry_kind","sink","status","status_code","surface","timeout_kind","timeout_ms"]),nW=([...nj.map(([,e])=>e),...nN],{metric:()=>void 0}),nJ=i.Or("@sketchi/observability/TelemetryExporter",{defaultValue:()=>nW}),nK=i.Or("@sketchi/observability/TelemetryCorrelation",{defaultValue:()=>({})});function nQ(e){let t=e?.trim();if(t&&!(t.length>128)&&/^[A-Za-z0-9][A-Za-z0-9._:-]*$/.test(t))return t}function n1(e,t){return o.JkU(function*(){let a={...yield*nK,...function(e){let t={};for(let[a]of nj){let s=nQ(e[a]);s&&(t[a]=s)}return t}(t)},s=function(e){let t={};for(let[a,s]of nj){let l=e[a];l&&(t[s]=l)}return t}(a);return yield*e.pipe(o.PfK(nK,a),o.Muk(s),o.swY(s))})}i.Or("@sketchi/observability/TelemetryResource",{defaultValue:()=>({serviceName:"sketchi"})});let n0=o.fn(function*(e,t,a={}){let s=function(e){let t={artifact_kind:e.artifactKind,failure_category:e.failureCategory,operation:e.operation,outcome:e.outcome,provider:e.provider,retry_kind:e.retryKind,sink:e.sink,surface:e.surface,timeout_kind:e.timeoutKind},a={};for(let[e,s]of Object.entries(t)){let t=nQ(s);t&&(a[e]=t)}return a}(a);yield*nY(nT(e,s),t);let l=yield*nJ,i=nR.getOrUndefined((yield*o._32.pipe(o.uKv)));yield*o.OH5(()=>l.metric({attributes:s,metric:e.id,metricType:e.type,...i?{spanId:i.spanId,traceId:i.traceId}:{},value:t}))});n$.W1;var n2=a(9315),n3=a(8713),n5=a(4733);let n4=new Set([...JSON.parse('["access","ace","active","addresses","administration","adobe","advanced","affinity","agent","agents","alloy","amazon","amp","analysis","analyzer","and","android","angular","apple","appliance","application","approvals","arc","armor","arrow","artifact","artifacts","asset","assist","assistant","assured","atom","audit","augment","authority","authorization","automatic","automation","autopilot","aware","axiom","azure","babel","balancing","bare","bash","basic","batch","bedrock","big","billing","binary","blitz","bolt","branching","brave","brunch","build","builder","business","c","capture","carbon","catalog","center","certificate","channel","checkpoints","chrome","chromium","cipher","clerk","cloud","code","codex","cohere","collaboration","command","composer","compute","computing","configuration","connect","connection","connectivity","connectors","console","contact","container","containers","context","contour","control","convex","copilot","core","crystal","cursor","custom","cypress","dart","dashboard","data","database","databases","db","debugger","default","deploy","deployed","deployment","design","designer","developer","director","directory","discovery","disk","distributed","document","dolphin","domains","dovetail","drizzle","early","edge","elastic","electron","elixir","ember","enforcement","engine","enterprise","error","expo","external","financial","firefly","firewall","fireworks","flask","fleet","flora","flow","flutter","flux","for","form","foundry","framer","frameworks","free","functions","fusion","game","gateway","generic","go","google","goose","graph","graphite","gulp","health","healthcare","home","hub","hybrid","hyper","hyperbolic","id","identity","ideogram","ids","illustrator","inception","inference","inflection","insights","insomnia","inspection","integration","intelligence","interconnect","inventory","jest","job","jobs","justifications","key","lab","labeling","lambda","language","launcher","layers","learning","legacy","less","linear","liquid","lit","load","local","lockup","logging","logic","logs","loss","lovable","lunacy","machine","machinery","magic","make","managed","management","manager","map","maps","marionette","markdown","marketing","marketplace","media","mesh","metal","migrate","migration","mixed","mobile","model","modeling","module","mongoose","monitoring","monocle","moonshot","motion","my","native","natural","neon","net","network","networking","next","nomad","notepad","notes","notion","nova","object","objective","obsidian","on","opera","operations","optimization","optimized","oracle","packaging","packer","palm","pandas","panel","partner","passport","patch","payload","performance","permissions","perplexity","persistent","phishing","phoenix","pipeline","platform","playwright","plus","poetry","policy","pool","portal","positron","postman","preferences","premium","preparation","presto","prettier","prevention","private","processing","producer","project","protection","protractor","providers","proxy","pulsar","puppeteer","putty","python","quantum","quasar","query","quiver","quotas","r","racket","rails","railway","rancher","react","real","reality","realm","recommendations","reflex","registry","release","render","replicate","reporting","resend","resource","restricted","retail","retention","rider","risk","router","routes","routing","ruby","rules","run","runway","rust","safari","sanity","sass","scanner","scheduler","search","secret","security","segment","selenium","sense","sentry","series","servers","service","services","sharp","shell","showcase","sketch","slack","slate","snowflake","solidity","solution","solutions","spanner","spark","speech","spring","stability","standard","stimulus","storage","storybook","stream","structured","studio","stylus","sublime","subversion","suite","support","swagger","swift","sync","systems","tables","tailwind","tasks","templates","test","text","threads","threat","tier","tiers","time","to","together","tomcat","tools","topology","trace","tracker","traffic","training","transfer","translation","trial","tutorials","twitter","type","types","typescript","unified","unity","unstructured","upgrade","upstage","user","vagrant","value","vapor","vault","vertex","video","view","vim","virtual","vision","visual","vortex","voyage","web","windsurf","wolfram","workbook","workflow","workflows","workload","workloads","workshop","world","yarn","yoga","zed"]'),"antigravity","api","dataflow","datastore","datastream","filestore","genomics","json","memorystore","meta","nitro","observability","onboarding","ontology","profiler","pubsub","pwa","remix","serverless","submodel","turbo"]),n6=/[A-Za-z0-9.+#]+/gu;function n7(e){return/[0-9.+#]/u.test(e)||e.length>=3&&!n4.has(e)}function n8(e){return e.trim().toLocaleLowerCase().replace(/\s+/gu," ")}function n9(e,t){return e.some(e=>n8(e).includes(t))}function ce(e,t){let a=n8(e.slug),s=n8(e.name),l=n8(e.collection),i=n8((0,n5.y)(e.collection));return a===t?0:s.startsWith(t)?1:n9(e.aliases,t)?2:a.includes(t)||s.includes(t)||n9(e.keywords,t)?3:l.includes(t)||i.includes(t)?4:null}let ct=new Set(["cloud-platforms","cloud-vendors"]);function ca(e){return e.toLocaleLowerCase().replace(/[^a-z0-9+#]/gu,"")}let cs=new WeakMap;class cl extends l.rNF()("CodeModeIconLoadError",{cause:l.kld(),message:l.QfV,slug:l.QfV}){}function ci(e){return{collection:e.collection,name:e.name,slug:e.slug}}function co(e){let t=e.icons.filter(n3.nC),a=new Map(t.map(e=>[e.slug,ci(e)]));return{get:e=>a.get(e),search:(e,a)=>(function(e,t={}){let a=n8(t.query??""),s=t.collection?.trim(),l=Math.max(0,t.limit??1/0),i=e.flatMap(e=>{if(s&&e.collection!==s)return[];let t=function(e,t){if(0===t.length)return 5;let a=ce(e,t);if(null!==a)return a;let s=t.split(/\s+/u);if(1===s.length)return null;let l=0;for(let t of s){let a=ce(e,t);if(null===a)return null;l=Math.max(l,a)}return l}(e,a);return null===t?[]:[{icon:e,rank:t}]}).sort((e,t)=>e.rank-t.rank||e.icon.name.localeCompare(t.icon.name)||e.icon.slug.localeCompare(t.icon.slug));return(i.length>0?i:function(e,t,a){let s=[...t.matchAll(n6)].map(([e])=>e.replace(/^\.+|\.+$/gu,"")).filter(Boolean).map(e=>e.toLocaleLowerCase()),l=function(e){let t=cs.get(e);if(t)return t;let a=new Map;for(let t of e)for(let e of new Set([t.slug,t.name,...t.aliases].map(ca))){if(!e)continue;let s=a.get(e)??[];s.push(t),a.set(e,s)}return cs.set(e,a),a}(e),i=new Map;for(let e=Math.min(4,s.length);e>0;e-=1)for(let t=0;t+e<=s.length;t+=1){let o=s.slice(t,t+e),r=o.some(n7);for(let s of l.get(ca(o.join("")))??[]){let l=ct.has(s.collection);if(i.has(s.slug)||!r&&!l||a&&s.collection!==a)continue;let n=ce(s,o.join(" "))??6;i.set(s.slug,{icon:s,length:e,start:t,termRank:n,vendor:l})}}return[...i.values()].sort((e,t)=>t.length-e.length||Number(e.vendor)-Number(t.vendor)||e.start-t.start||e.termRank-t.termRank||e.icon.name.localeCompare(t.icon.name)||e.icon.slug.localeCompare(t.icon.slug)).map(({icon:e})=>({icon:e,rank:6}))}(e,a,s)).slice(0,l)})(t,{limit:a,query:e}).map(({icon:e})=>ci(e)),loadSvg:e.loadSvg,slugLookup:e.slugLookup}}function cr(e){return t4(e).toLowerCase()}function cn(e){var t;let a;return{code:"unknown_icon",severity:"warning",stage:"input",...e.ref?{ref:e.ref}:{},message:e.message,hint:e.catalog?(a=function(e,t){let a=t.split(/[-_\s]+/u).filter(Boolean),s=new Set,l=[];for(let t of[a.join(" "),...a])if(t){for(let a of e.search(t,3))s.has(a.slug)||(s.add(a.slug),l.push(a));if(l.length>=3)break}return l.slice(0,3)}(t=e.catalog,e.slug)).length>0?`Use an exact slug, for example ${a.map(e=>`"${e.slug}" (${e.name})`).join(", ")}, or look one up with ${t.slugLookup}.`:`Look up an exact slug with ${t.slugLookup}, or omit icon.`:"This Sketchi runtime has no icon catalog; omit icon or retry on a host with logos."}}function cc(e,t,a={noun:"node",path:"nodes"}){let s=[],l=e.map(e=>{if(!e.icon)return e;let l=cr(e.icon.slug);if(u(l)&&t?.get(l))return{...e,icon:{slug:l}};s.push(cn({catalog:t,message:`Icon "${e.icon.slug}" on ${a.noun} "${e.id}" is not a Sketchi node logo; the ${a.noun} renders without a logo.`,ref:{kind:"node",id:e.id,path:`${a.path}.icon.slug`},slug:l}));let{icon:i,...o}=e;return o});return{issues:s,nodes:l}}let cd=o.fn("codeMode.icons.embedScene")(function*(e,t){let a=e.elements.map(e=>"node"===e.type&&e.icon?{...e,icon:{...e.icon,slug:cr(e.icon.slug)}}:e),s=new Map([...new Set(a.flatMap(e=>"node"===e.type&&e.icon?[e.icon.slug]:[]))].flatMap(e=>{let a=u(e)?t?.get(e):void 0;return a?[[e,a]]:[]})),l=new Map((yield*o.jJl([...s.values()],e=>t?t.loadSvg(e).pipe(o.TjK(e=>(0,n3.Bn)(e)),o.TjK(t=>[e.slug,{name:e.name,svg:t}]),o.Tyx(t=>o.FFw("Code Mode icon asset unavailable",{slug:e.slug,cause:t}).pipe(o.as(void 0)))):o.PyW(void 0),{concurrency:8})).flatMap(e=>e?[e]:[])),i=function(e,t){let a=new Map,s=[],l=tf(e),i=tm(e,l),o=0,r=e.elements.map((e,r)=>{if("node"!==e.type||!e.icon)return e;let n=e.icon,c=t=>(s.push({elementId:e.id,index:r,reason:t,slug:n.slug}),function(e){let{icon:t,...a}=e;return a}(e)),d=a.get(n.slug),p=d??(u(n.slug)?t(n.slug):void 0);if("string"!=typeof p?.svg||tp(p.svg)>tl.maxAssetBytes)return c("unavailable");if(e.rendererRole)return c("lifeline");if("polygon"!==e.shape&&l(e)){let t=i.get(e.id)?.element;if(tv(e,t,n)&&!tv(e,t,void 0))return c("no_room")}if(!d){let e=tp(p.svg);if(o+e>tl.maxTotalAssetBytes)return c("budget");o+=e,a.set(n.slug,{name:p.name,svg:p.svg})}return e}),{icons:n,...c}=e;return{dropped:s,scene:a.size>0?{...c,elements:r,icons:Object.fromEntries(a)}:{...c,elements:r}}}({...e,elements:a},e=>l.get(e));return{issues:i.dropped.map(e=>(function(e){let{dropped:t}=e,a={kind:"element",id:t.elementId,path:`elements[${t.index}].icon${"unavailable"===t.reason?".slug":""}`},s=`Icon "${t.slug}" on node "${t.elementId}"`;if("unavailable"===t.reason&&!e.known)return cn({catalog:e.catalog,message:`${s} is not a Sketchi node logo; the node renders without a logo.`,ref:a,slug:t.slug});let l=e.element?.type==="node"?tu(e.element.icon):0,i={budget:{message:`${s} exceeds the per-diagram logo budget; the node renders without a logo.`,hint:"Use fewer distinct logos in one diagram."},lifeline:{message:`Sequence lifeline or activation "${t.elementId}" cannot carry a logo; the logo was dropped.`,hint:"Put logos on nodes or sequence participants, not on lifelines."},no_room:{message:`${s} does not fit above its label; the node renders without a logo.`,hint:`Make node "${t.elementId}" about ${l}px taller or shorten its label to keep the logo.`},unavailable:{message:`${s} could not be loaded; the node renders without a logo.`,hint:"Retry the request; if the logo stays unavailable, omit icon."}}[t.reason];return{code:"icon_dropped",severity:"warning",stage:"input",ref:a,message:i.message,hint:i.hint}})({catalog:t,dropped:e,element:a[e.index],known:s.has(e.slug)})),scene:i.scene}}),cp=/^(node|step|item|box|thing|process|task)\s*\d*$/i,ch=/^(diagram|untitled|flowchart|chart|sketch)$/i;function cg(e){return e.map(e=>({kind:"node",id:e.id}))}function cu(e){if(void 0===e)return;let t=t4(e);return t.length>0?t:void 0}let cf={start:"start",begin:"start",entry:"start",process:"process",task:"process",action:"process",step:"process",activity:"process",operation:"process",decision:"decision",condition:"decision",question:"decision",choice:"decision",gateway:"decision",end:"end",stop:"end",finish:"end",exit:"end",final:"end"},cm=new Set(["terminal","terminator","terminus"]),cv=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),cy=["excalidraw","scene"],cw=["scene"],cx=nX("sketchi_codemode_requests",{description:"Code Mode boundary requests by terminal outcome",incremental:!0}),cb=nX("sketchi_codemode_failures",{description:"Code Mode boundary failures by typed status",incremental:!0}),ck=nX("sketchi_codemode_artifacts",{description:"Code Mode artifacts accepted at workflow boundaries",incremental:!0}),cM=new class e extends nI{type="Histogram";#l;constructor(e,t){super(e,t?.description,nD(t?.attributes)),this.#l=t.boundaries}createHooks(){let e=this.#l,t=e.length,a=new Uint32Array(t+1),s=new Float64Array(t),l=0,i=0,o=Number.MAX_VALUE,r=-Number.MAX_VALUE;return nz.Tj(nz.di(e,nS.wN),(e,t)=>{s[t]=e}),nZ(()=>({buckets:(()=>{let e=nz.CN(t),l=0;for(let i=0;i<t;i++){let t=s[i];l+=a[i],e[i]=[t,l]}return e})(),count:l,min:o,max:r,sum:i}),e=>{let n=0,c=t;for(;n!==c;){let t=Math.floor(n+(c-n)/2);e<=s[t]?c=t:n=t,c===n+1&&(e<=s[n]?c=n:n=c)}a[n]=a[n]+1,l+=1,i+=e,e<o&&(o=e),e>r&&(r=e)})}}("sketchi_codemode_duration_ms",{description:"Code Mode boundary duration in milliseconds",boundaries:(s=[1,5,10,25,50,100,250,500,1e3,2500,5e3,1e4],nz.BC(nz.pb(new Set(s),e=>e>0),1/0))});class cC extends i.kl()("@sketchi/diagram-agent/CodeModeRuntimeEnvironment"){}function cz(e={}){return n.Py(cC,{createId:e.createId??cW,...e.icons?{icons:e.icons}:{},...e.renderer?{renderer:e.renderer}:{},...e.artifactUrl?{artifactUrl:e.artifactUrl}:{}})}function c_(e){return null===e||"object"!=typeof e||Array.isArray(e)?void 0:Object.fromEntries(Object.entries(e))}function cL(e){return{...e,type:"timeline"}}function cB(e){return{...e,type:"chart"}}function cA(e){return{id:e.id,title:e.title,type:"sequence",participants:e.participants,messages:e.messages,style:e.style}}n.Py(cC,{createId:cW});let cS={sequence_too_large:"sequence_too_large",duplicate_participant_id:"duplicate_node_id",lifeline_id_collision:"duplicate_node_id",duplicate_message_id:"duplicate_edge_id",missing_message_source:"missing_edge_source",missing_message_target:"missing_edge_target",self_message:"self_loop"},cP={missing_message_source:"Use the id of a participant declared in spec.participants.",missing_message_target:"Use the id of a participant declared in spec.participants."};function cV(e){return{...e,type:"state-machine"}}let cH={state_machine_too_large:"state_machine_too_large",invalid_state_id:"invalid_state",duplicate_state_id:"duplicate_node_id",duplicate_transition_id:"duplicate_edge_id",missing_state_label:"invalid_state",unknown_initial_state:"unknown_initial_state",unknown_parent_state:"invalid_composite",nested_composite:"invalid_composite",missing_transition_source:"missing_edge_source",missing_transition_target:"missing_edge_target",final_has_outgoing:"final_has_outgoing",composite_member_transition:"invalid_composite",missing_composite_initial:"invalid_composite",underbranched_choice:"underbranched_choice",unguarded_choice_branch:"unlabeled_decision_branch",unreachable_state:"unreachable_node"};class cq extends l.rNF()("CodeModeArtifactRenderFailed",{cause:l.kld(),message:l.QfV}){}class cF extends l.rNF()("CodeModeArtifactRendererNotConfigured",{message:l.QfV}){}let cI=l._kM({issues:l.O31(l.O3D(aI)).pipe(l.fXn)});class cE extends l.rNF()("ArtifactExportFailure",{status:l.uSQ("export_failed"),issues:cI.fields.issues}){}class cO extends l.rNF()("ArtifactStorageFailure",{status:l.uSQ("storage_failed"),cause:l.kld(),issues:cI.fields.issues}){}function cU(e,t,a){class s extends l.rNF()(e,{message:l.QfV,status:t,context:a}){constructor(e){super({...e,message:e.context.issues[0]?.message??e.status},{disableChecks:!0})}}return s}let cX=cU("BuildFlowchartFailure",lU.fields.status,lU.mapFields(({ok:e,status:t,...a})=>({...a,...cI.fields}))),cY=cU("BuildMindmapFailure",lY.fields.status,lY.mapFields(({ok:e,status:t,...a})=>({...a,...cI.fields}))),cT=cU("BuildSequenceDiagramFailure",lZ.fields.status,lZ.mapFields(({ok:e,status:t,...a})=>({...a,...cI.fields}))),cZ=cU("BuildStateMachineFailure",lN.fields.status,lN.mapFields(({ok:e,status:t,...a})=>({...a,...cI.fields}))),cG=cU("BuildTimelineFailure",lD.fields.status,lD.mapFields(({ok:e,status:t,...a})=>({...a,...cI.fields}))),cD=cU("BuildChartFailure",l$.fields.status,l$.mapFields(({ok:e,status:t,...a})=>({...a,...cI.fields}))),cR=cU("CreateCanvasFailure",l0.fields.status,l0.mapFields(({ok:e,status:t,...a})=>({...a,...cI.fields}))),c$=cU("GetArtifactFailure",lJ.fields.status,lJ.mapFields(({ok:e,status:t,...a})=>({...a,...cI.fields}))),cj=cU("SearchIconsFailure",l9.fields.status,l9.mapFields(({ok:e,status:t,...a})=>({...a,...cI.fields}))),cN=cU("ApplyDiagramPatchFailure",lQ.fields.status,lQ.mapFields(({ok:e,status:t,...a})=>({...a,...cI.fields})));function cW(e){return`${e}_${globalThis.crypto.randomUUID()}`}function cJ(e){return{code:e.code,severity:e.severity??"error",stage:e.stage,...e.ref?{ref:e.ref}:{},message:e.message,hint:e.hint}}function cK(e){return 0===e.length?"input":e.map(e=>"number"==typeof e?`[${e}]`:String(e)).join(".")}function cQ(e){let t=cK(e.path);return c1(t)?"unsupported_patch_operation":"InvalidType"===e.issueTag||"MissingKey"===e.issueTag&&"invalid_type"===e.missingKeyCode?"invalid_type":"LiteralUnion"===e.astKind&&"AnyOf"===e.issueTag?"invalid_enum":t.toLowerCase().includes("color")?"invalid_color":"input"===t?"invalid_type":"missing_field"}function c1(e){return/^operations\.\[\d+\]\.op$/.test(e)}function c0(e){return c1(e)?`Use one of: ${aU.join(", ")}. For label edits, use replaceText with selector plus text.`:"source"===e?"Pass source: { artifactId } from an accepted build or patch, or source: { scene } for inline Sketchi scene patching.":`Fix ${e} so it matches the Code Mode API contract.`}let c2=/^spec\.nodes\.\[\d+\]\.kind$/;function c3(e){return c2.test(e)?'Set kind to "start" (the single entry), "process" (a step), "decision" (a node whose outgoing edges carry branch labels) or "end" (an outcome).':c0(e)}function c5(e,t=c0){let a=e.issues.slice(0,20).map(e=>{let a=cK(e.path);return cJ({code:cQ(e),stage:"input",ref:{kind:"request",path:a},message:e.message,hint:t(a)})});return e.issues.length>20&&a.push(cJ({code:"invalid_type",stage:"input",ref:{kind:"request",path:"input"},message:`${e.issues.length-20} additional input issues were omitted.`,hint:"Fix the summarized request shape before retrying."})),a}function c4(e){return e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,48)}function c6(e){if(void 0===e)return;let t=t4(e);return t.length>0?t:void 0}function c7(e){return e.checks.map(e=>{var t;return cJ({code:"generic_label"===(t=e.code)||"label_too_long"===t||"disconnected_graph"===t?t:"quality_below_threshold",severity:e.severity,stage:"quality",message:e.message,hint:"error"===e.severity?"Repair the structural issue and call buildFlowchart again.":"Improve the labels or scope before styling the artifact."})})}function c8(e){return e?.artifactFormats??cy}function c9(e){return e?.inlineArtifacts??cw}let de=o.fn("codeMode.artifacts.exportFormats")(function*(e){let t=[];for(let i of e.formats){var a,s,l;let r=yield*(a=e,"scene"===(s=i)?o.PyW(a.scene):"excalidraw"===s?o.PyW(function(e,t={}){return{type:"excalidraw",version:2,source:t.source??"https://sketchi.app",elements:e.elements,appState:e.appState,files:e.files??{}}}(a.excalidraw)):a.renderer?a.renderer.renderPng({scene:a.scene,excalidraw:a.excalidraw}).pipe(o.xm_(e=>cq.make({cause:e,message:e.message}))):o.fJG(cF.make({message:"PNG artifact rendering is not configured for this runtime."})));t.push({format:i,mimeType:is[i],data:r,sizeBytes:(l=r)instanceof ArrayBuffer||l instanceof Uint8Array?l.byteLength:io(l)})}return t});function dt(e){return e.map(e=>cJ({code:"overlapping-arrow-segment"===e.code?"arrow_overlap":"text-overflow"===e.code?"text_overflow":e.code.includes("binding")||e.code.includes("bound")||e.code.includes("endpoint")?"arrow_binding_invalid":"export_invalid_scene",stage:"export",ref:e.elementId?{kind:"artifact",id:e.elementId}:{kind:"artifact"},message:e.message,hint:"Inspect the rendered scene and retry with a simpler layout or patch."}))}function da(e){return e.slice(0,20).map(e=>cJ({code:function(e){switch(e.code){case"duplicate_element_id":return"duplicate_element_id";case"duplicate_layer_id":return"duplicate_layer_id";case"empty_canvas":case"invalid_geometry":case"label_overflow":return"invalid_canvas_geometry";case"invalid_binding":return"invalid_canvas_binding";case"invalid_composition":return"invalid_canvas_composition";case"invalid_icon":return"invalid_canvas_icon";case"invalid_polygon":return"invalid_polygon";case"limit_exceeded":return"canvas_limit_exceeded";case"missing_z_order_element":case"duplicate_z_order_element":case"unknown_z_order_element":return"invalid_z_order";case"unknown_layout_target":return"unknown_layout_target"}}(e),stage:"canvas",ref:e.elementId?{kind:"element",id:e.elementId,path:e.path}:{kind:"diagram",path:e.path},message:e.message,hint:"Repair the referenced CanvasSpec field and call createCanvas again."}))}function ds(e){return dt(e.filter(e=>"overlapping-arrow-segment"!==e.code&&"arrow-segment-through-node"!==e.code))}function dl(e){let t=[];for(let i of e.elements){if("arrow"===i.type){let e=i.points[0],a=i.points[1],s=i.points.slice(2);if(!e||!a)return null;let l=[e,a,...s];t.push({...i,type:"arrow",id:i.id,edgeId:i.edgeId,sourceNodeId:i.sourceNodeId,targetNodeId:i.targetNodeId,...i.strokeColor?{strokeColor:i.strokeColor}:{},...i.strokeStyle?{strokeStyle:i.strokeStyle}:{},...i.textColor?{textColor:i.textColor}:{},points:l,...i.label?{label:i.label}:{}});continue}if("node"===i.type){var a,s,l;let o=i.points;if("polygon"===i.shape&&(!o||!o[0]||!o[1]||!o[2]))return null;t.push({type:"node",id:i.id,nodeId:i.nodeId,...i.kind?{kind:i.kind}:{},...i.icon?{icon:{slug:i.icon.slug,size:i.icon.size}}:{},shape:i.shape,...i.fillColor?{fillColor:i.fillColor}:{},...i.strokeColor?{strokeColor:i.strokeColor}:{},x:i.x,y:i.y,width:i.width,height:i.height,label:i.label,...i.frameId?{frameId:i.frameId}:{},...i.groupIds?{groupIds:[...i.groupIds]}:{},...i.layerId?{layerId:i.layerId}:{},...void 0!==i.locked?{locked:i.locked}:{},...void 0!==i.opacity?{opacity:i.opacity}:{},...void 0!==i.zIndex?{zIndex:i.zIndex}:{},...i.fillStyle?{fillStyle:i.fillStyle}:{},...void 0!==i.roughness?{roughness:i.roughness}:{},...i.strokeStyle?{strokeStyle:i.strokeStyle}:{},...void 0!==i.strokeWidth?{strokeWidth:i.strokeWidth}:{},..."sequence-lifeline"===i.rendererRole&&nM(e,i)||"sequence-activation"===i.rendererRole&&function(e,t){let a=`${eA}:activation:`,s=t.nodeId.indexOf(a);if(s<=0||s+a.length===t.nodeId.length||t.id!==`node:${t.nodeId}`||"rectangle"!==t.shape||12!==t.width)return!1;let l=t.nodeId.slice(0,s+eA.length),i=e.elements.find(e=>"node"===e.type&&e.id===`node:${l}`&&e.nodeId===l);if(!i||!nM(e,i))return!1;let o=i.x+i.width/2,r=(t.x-(o-6))/6,n=e.elements.filter(e=>"node"===e.type&&e.nodeId.startsWith(`${l}:activation:`)).length;return r>=-.01&&.01>=Math.abs(r-Math.round(r))&&Math.round(r)<n&&t.y>=i.y-.01&&t.y+t.height<=i.y+i.height+.01}(e,i)||"timeline-marker"===i.rendererRole&&(a=i).nodeId.startsWith("event:")&&a.id===`node:${a.nodeId}`&&a.height<=18&&void 0===a.icon||"chart-mark"===i.rendererRole&&(s=i).nodeId.startsWith("chart:")&&s.id===`node:${s.nodeId}`&&void 0===s.icon||"state-marker"===i.rendererRole&&void 0!==(l=i).kind&&ny[l.kind]===l.shape&&void 0===l.icon?{rendererRole:i.rendererRole}:{},...i.textColor?{textColor:i.textColor}:{},..."polygon"===i.shape&&o?.[0]&&o[1]&&o[2]?{points:[o[0],o[1],o[2],...o.slice(3)]}:{}});continue}if("line"===i.type){let e=i.points[0],a=i.points[1];if(!e||!a)return null;t.push({...i,points:[e,a,...i.points.slice(2)]});continue}t.push(structuredClone(i))}return{kind:e.kind,version:e.version,diagramId:e.diagramId,title:e.title,width:e.width,height:e.height,accentColor:e.accentColor,backgroundColor:e.backgroundColor,elements:t,layers:structuredClone(e.layers),layouts:structuredClone(e.layouts),zOrder:[...e.zOrder]}}function di(e){return structuredClone(e)}function dr(e){return e.elements.flatMap(e=>"arrow"===e.type?[`arrow:${e.id}:${e.sourceNodeId}->${e.targetNodeId}`]:"line"===e.type?[`line:${e.id}:${e.startBinding?.elementId??""}->${e.endBinding?.elementId??""}`]:[]).sort()}function dn(e){return e.elements.filter(e=>"node"===e.type)}function dc(e){return e.elements.filter(e=>"text"===e.type)}function dd(e){return e.elements.filter(e=>"arrow"===e.type)}function dp(e,t){if(!e||0===e.length||!t)return!1;let a=t.trim().toLowerCase();return e.some(e=>e.trim().toLowerCase()===a)}function dh(e,t){let a=t?.scope??"all",s=!!(t&&((t.ids?.length??0)>0||(t.nodeIds?.length??0)>0||(t.edgeIds?.length??0)>0||(t.kinds?.length??0)>0||(t.labels?.length??0)>0)),l=new Set(t?.ids??[]),i=new Set(t?.nodeIds??[]),o=new Set(t?.edgeIds??[]),r=new Set(t?.kinds??[]),n=dn(e).filter(e=>"edges"!==a&&(!t||!s||l.has(e.id)||i.has(e.nodeId)||!!e.kind&&[...r].some(t=>t===e.kind)||dp(t.labels,e.label))),c=dd(e).filter(e=>"nodes"!==a&&(!t||!s||l.has(e.id)||o.has(e.edgeId)||dp(t.labels,e.label))),d=new Set(n.map(e=>e.id)),p=new Set(c.map(e=>e.id));return{arrows:c,nodes:n,texts:dc(e).filter(e=>t&&s?l.has(e.id)||!!e.containerId&&d.has(e.containerId)||!!e.containerId&&p.has(e.containerId)||dp(t.labels,e.text):"nodes"===a?!!e.containerId&&d.has(e.containerId):"edges"!==a||!!e.containerId&&p.has(e.containerId))}}function dg(e){return cJ({code:"unknown_patch_target",stage:"flowchart",ref:{kind:"request",path:"operations.selector"},message:`Patch operation "${e.op}" did not match any scene element.`,hint:"Use nodeIds, edgeIds, ids, kinds, labels, or scope values that exist in the accepted artifact."})}function du(e,t){return dc(e).find(e=>e.containerId===t||e.id===`${t}:label`)}function df(e,t){let a=new Set(t);for(let t of dd(e))(a.has(t.sourceNodeId)||a.has(t.targetNodeId))&&dy(e,t)}function dm(e){return{x:e.x+e.width/2,y:e.y+e.height/2}}function dv(e,t,a){let s=dm(e),l=dm(t),i=l.x-s.x,o=l.y-s.y;return 0===i&&0===o?{x:s.x,y:"source"===a?e.y+e.height:e.y}:Math.abs(i)>Math.abs(o)?i>=0?{x:e.x+e.width,y:s.y}:{x:e.x,y:s.y}:o>=0?{x:s.x,y:e.y+e.height}:{x:s.x,y:e.y}}function dy(e,t){let a=new Map(dn(e).map(e=>[e.nodeId,e])),s=a.get(t.sourceNodeId),l=a.get(t.targetNodeId);if(!s||!l)return[cJ({code:"patch_output_invalid",stage:"render",ref:{kind:"edge",id:t.edgeId},message:`Arrow "${t.id}" references a node that is not in the scene.`,hint:"Rebuild the diagram with buildFlowchart or buildMindmap before applying visual patches."})];let i=dv(s,l,"source"),o=dv(l,s,"target");if(Math.abs(o.y-i.y)>=Math.abs(o.x-i.x)){let e=(i.y+o.y)/2;t.points=[i,{x:i.x,y:e},{x:o.x,y:e},o]}else{let e=(i.x+o.x)/2;t.points=[i,{x:e,y:i.y},{x:e,y:o.y},o]}return!function(e,t){let a=du(e,t.id),s=function(e){let t=e[0],a=e[e.length-1];if(t&&a)return{x:(t.x+a.x)/2,y:(t.y+a.y)/2-10}}(t.points);if(a&&!a.containerId){let e=t.points[0];if(!e)return;let s=t.points.find(t=>t.x!==e.x||t.y!==e.y);if(!s)return;let l=ta(a.text,a.maxWidth??160,a.fontSize),i=te(l,a.fontSize,a.maxWidth??160),o=Math.ceil(l.split("\n").length*a.fontSize*1.35);a.x=(e.x+s.x)/2+(e.x===s.x?i/2+8:0),a.y=(e.y+s.y)/2-(e.y===s.y?o/2+5:0);return}a&&s&&(a.x=s.x,a.y=s.y)}(e,t),[]}function dw(e){let t=e.width,a=e.height;for(let s of e.elements)if("arrow"===s.type||"line"===s.type)for(let e of s.points)t=Math.max(t,e.x),a=Math.max(a,e.y);else"text"===s.type?(t=Math.max(t,s.x+(s.maxWidth??0)),a=Math.max(a,s.y+s.fontSize)):(t=Math.max(t,s.x+s.width),a=Math.max(a,s.y+s.height));e.width=t+48,e.height=a+48}function dx(e,t,a){if(!t||!a){if(t){let a=e.indexOf(t);return a>=0?a:void 0}if(a){let t=e.indexOf(a);return t>=0?t+1:void 0}return e.length}}function db(e,t){return[cJ({code:"patch_output_invalid",stage:"canvas",ref:{kind:"request",path:"operations"},message:t,hint:`Repair the ${e.op} operation and preserve unique, stable element ids.`})]}let dk=o.fn("codeMode.patch.resolveSource")(function*(e){if("scene"in e.source)return{scene:di(e.source.scene)};let t=yield*ia,a=yield*t.readManifest(e.source.artifactId).pipe(o.xm_(e=>new cN({status:"storage_failed",context:{issues:[ic(e.message,"storage_read_failed")]}})));if(!a||a.artifactId!==e.source.artifactId||!a.formats.some(e=>"scene"===e.format))return yield*new cN({status:"source_unavailable",context:{issues:[cJ({code:"patch_source_unavailable",stage:"storage",ref:{kind:"artifact",id:e.source.artifactId},message:`Artifact "${e.source.artifactId}" does not have a valid source manifest.`,hint:"Rebuild with the appropriate build operation and patch the accepted artifact id."})]}});let s=yield*t.read(e.source.artifactId,"scene").pipe(o.xm_(e=>new cN({status:"storage_failed",context:{issues:[ic(e.message,"storage_read_failed")]}})));if(!s)return yield*new cN({status:"source_unavailable",context:{issues:[cJ({code:"patch_source_unavailable",stage:"storage",ref:{kind:"artifact",id:e.source.artifactId},message:`Scene artifact "${e.source.artifactId}" is not available.`,hint:"Call buildFlowchart or buildMindmap first, then patch the accepted artifact id."})]}});let i=l.q$Z(s6,{errors:"all",reportInput:!0})(s.data);return n2.oJ(i)?{scene:di(i.success),sourceArtifactId:e.source.artifactId}:yield*new cN({status:"source_unavailable",context:{issues:[cJ({code:"patch_source_unavailable",stage:"storage",ref:{kind:"artifact",id:e.source.artifactId},message:`Scene artifact "${e.source.artifactId}" could not be decoded.`,hint:"Rebuild with the appropriate build operation and patch the new artifact."})]}})});function dM(e){return e?{requestId:e}:{}}function dC(e){return{diagramId:e.diagramId,formats:[{format:"scene",mimeType:is.scene,inline:e,sizeBytes:io(e)}]}}function dz(e){return{ok:!1,status:e.status,...e.context}}function d_(e,t){return ic(e.message,t)}let dL=o.fn("codeMode.artifacts.exportAndStore")(function*(e){let t=yield*cC,a=yield*ia,{excalidraw:s,validation:l}=yield*o.OH5(()=>{let t=function(e){let t,a,s,l,i,o,r,n=(t=new Map(e.layers.map(e=>[e.id,e])),s=new Set((a=e.elements.filter(e=>{let a=e.layerId?t.get(e.layerId):void 0;return a?.visible!==!1})).flatMap(e=>"node"===e.type||"frame"===e.type&&void 0!==e.nodeId?[e.nodeId]:[])),i=new Set((l=a.filter(e=>"arrow"!==e.type||s.has(e.sourceNodeId)&&s.has(e.targetNodeId))).flatMap(e=>"text"===e.type?[]:[e.id])),r=new Set((o=l.filter(e=>"text"!==e.type||!e.containerId||i.has(e.containerId))).map(e=>e.id)),o.map(e=>{let a=e.layerId?t.get(e.layerId):void 0,{frameId:s,...l}=e;return{...e.frameId&&!r.has(e.frameId)?l:e,...a?.locked===!0?{locked:!0}:{}}})),{textElements:c,generatedLabelSourceIds:d}=function(e){let t=e.filter(iX),a=e.filter(iY),s=new Set(e.map(e=>e.id)),l=new Map,i=new Set(a.flatMap(e=>e.containerId?[e.containerId]:[]));for(let e of t){if(i.has(e.id)||e.rendererRole)continue;let t=`__sketchi_node_label__${e.id}`,o=t,r=2;for(;s.has(o);)o=`${t}:${r}`,r+=1;s.add(o),l.set(o,e.id),a.push({type:"text",id:o,containerId:e.id,...e.frameId?{frameId:e.frameId}:{},...e.groupIds?{groupIds:[...e.groupIds]}:{},...e.layerId?{layerId:e.layerId}:{},...void 0!==e.locked?{locked:e.locked}:{},...void 0!==e.opacity?{opacity:e.opacity}:{},...e.textColor?{textColor:e.textColor}:{},x:e.x+e.width/2,y:e.y+e.height/2,text:e.label,fontSize:16,maxWidth:Math.max(1,e.width-24)})}return{textElements:a,generatedLabelSourceIds:l}}(n),p={},h=new Map(d),g=function(e,t,a,s,l){var i,o,r,n;let c=t.filter(iX),d=new Set([...t.map(e=>e.id),...a.map(e=>e.id)]),p=new Map,h=new Map;for(let e of a)e.containerId&&h.set(e.containerId,e);let g=t.filter(iT),u=t.filter(iZ),f=function(e,t,a,s){let l=new Map,i=new Map([...e.map(e=>[e.nodeId,e.id]),...t.flatMap(e=>void 0===e.nodeId?[]:[[e.nodeId,e.id]])]);for(let e of a)for(let t of[e.sourceNodeId,e.targetNodeId]){let a=i.get(t);a&&l.set(a,[...l.get(a)??[],e.id])}for(let e of s)for(let t of[e.startBinding,e.endBinding])t&&l.set(t.elementId,[...l.get(t.elementId)??[],e.id]);return l}(c,t.filter(iG),g,u),m=new Map,v=[];for(let t of c){let a=h.get(t.id),n=function(e){let t=e.shape.height,a="circle"===e.shape.shape?"ellipse":e.shape.shape,s=[...e.text&&"polygon"!==e.shape.shape?[{id:e.text.id,type:"text"}]:[],...e.arrowIds.map(e=>({id:e,type:"arrow"}))];if("polygon"===e.shape.shape){let t=e.shape.points??[{x:e.shape.width/2,y:0},{x:e.shape.width,y:e.shape.height},{x:0,y:e.shape.height}],[a]=t;return{...iF(e.shape.id,e.shape),type:"line",x:e.shape.x,y:e.shape.y,width:e.shape.width,height:e.shape.height,backgroundColor:e.shape.fillColor??"transparent",boundElements:e.arrowIds.map(e=>({id:e,type:"arrow"})),customData:{sketchiShape:"polygon",...e.shape.rendererRole?{sketchiRendererRole:e.shape.rendererRole}:{}},endArrowhead:null,endBinding:null,lastCommittedPoint:null,points:[...t,a].map(e=>[e.x,e.y]),roundness:null,startArrowhead:null,startBinding:null,strokeColor:e.shape.strokeColor??e.scene.accentColor}}return{...iF(e.shape.id,e.shape),type:a,x:e.shape.x,y:e.shape.y,width:e.shape.width,height:t,backgroundColor:e.shape.fillColor??"transparent",boundElements:s.length>0?s:null,roundness:"rectangle"===a&&"chart-mark"!==e.shape.rendererRole?{type:3}:null,strokeColor:e.shape.strokeColor??e.scene.accentColor,...e.shape.rendererRole?{customData:{sketchiRendererRole:e.shape.rendererRole}}:{}}}({scene:e,shape:t,arrowIds:f.get(t.id)??[],...a?{text:a}:{}});m.set(t.nodeId,n),v.push(n);let c=t.icon&&e.icons&&Object.hasOwn(e.icons,t.icon.slug)?e.icons[t.icon.slug]:void 0;if(!t.icon||"string"!=typeof c?.svg)continue;let g=(i=t.icon.slug,o=c.svg,`sketchi-icon-${i}-${tV(o,"hex","utf16")}`),u=function(e,t){let a=`${e.id.replace(/[^\w-]/gu,"-")}-icon`,s=a,l=2;for(;t.has(s);)s=`${a}-${l}`,l+=1;return t.add(s),s}(t,d),y=function(e){let t=function(e){if(!e.icon)return;let t=th(e);return{x:e.x+(e.width-e.icon.size)/2,y:e.y+t.y+tl.gap,width:e.icon.size,height:e.icon.size}}(e.node);return t&&e.node.icon?{...iF(e.id,e.node),groupIds:[iE(e.node),...e.node.groupIds??[]],type:"image",x:t.x,y:t.y,width:t.width,height:t.height,backgroundColor:"transparent",boundElements:null,crop:null,customData:{sketchiNodeIcon:e.node.icon.slug},fileId:e.fileId,roundness:null,scale:[1,1],status:"saved",strokeColor:"transparent"}:null}({fileId:g,id:u,node:t});y&&(s[g]??=(r=c.svg,{id:g,mimeType:"image/svg+xml",dataURL:`data:image/svg+xml;base64,${function(e){let t=new TextEncoder().encode(e),a="";for(let e=0;e<t.length;e+=32768)a+=String.fromCharCode(...t.subarray(e,e+32768));return btoa(a)}(r)}`,created:1,lastRetrieved:1}),n.groupIds=[iE(t),...t.groupIds??[]],l.set(u,t.id),p.set(t.id,t),v.push(y))}for(let a of t.filter(iG)){let t={...iF((n={element:a,scene:e}).element.id,n.element),type:"frame",x:n.element.x,y:n.element.y,width:n.element.width,height:n.element.height,backgroundColor:n.element.fillColor??"transparent",boundElements:null,name:n.element.name??null,roundness:null,strokeColor:n.element.strokeColor??n.scene.accentColor},s=f.get(a.id)??[];t.boundElements=s.length?s.map(e=>({id:e,type:"arrow"})):null,void 0!==a.nodeId&&m.set(a.nodeId,t),v.push(t)}for(let e of a){let t=c.find(t=>t.id===e.containerId&&"polygon"!==t.shape),a=g.some(t=>t.id===e.containerId),s=g.find(t=>e.id===`${t.id}:label`),l=e.containerId&&(t||a),i=e.textColor??s?.textColor,o=iI({...t?{container:t}:{},element:e,id:e.id,...l?{containerId:e.containerId}:{},fontSize:e.fontSize,maxWidth:e.maxWidth??160,...i?{textColor:i}:{},text:e.text,wrap:a||!!s,x:e.x,y:e.y}),r=t?p.get(t.id):void 0;r&&(o.groupIds=[iE(r),...e.groupIds??[]]),v.push(o)}for(let t of g){let s=h.get(t.id)??a.find(e=>e.id===`${t.id}:label`);v.push(function(e){let t=e.arrow.points[0],a=iO(e.arrow),s=e.arrow.points.length>2||e.sourceShape?.type==="frame"||e.targetShape?.type==="frame";return{...iF(e.arrow.id,e.arrow),type:"arrow",x:t.x,y:t.y,width:a.x-t.x,height:a.y-t.y,backgroundColor:"transparent",boundElements:e.text?e.text.containerId===e.arrow.id?[{id:e.text.id,type:"text"}]:null:e.arrow.label?[{id:`${e.arrow.id}:label`,type:"text"}]:null,elbowed:s,endArrowhead:void 0===e.arrow.endArrowhead?"arrow":e.arrow.endArrowhead,endBinding:iq(e.targetShape,a),...s?{fixedSegments:[],startIsSpecial:null,endIsSpecial:null}:{},points:e.arrow.points.map(e=>[e.x-t.x,e.y-t.y]),roundness:s?null:{type:2},startArrowhead:e.arrow.startArrowhead??null,startBinding:iq(e.sourceShape,t),strokeColor:e.arrow.strokeColor??e.scene.accentColor,strokeStyle:e.arrow.strokeStyle??"solid"}}({arrow:t,scene:e,sourceShape:m.get(t.sourceNodeId),targetShape:m.get(t.targetNodeId),...s?{text:s}:{}}));let l=t.label&&!s?function(e){if(!e.arrow.label)return null;let t=e.arrow.points[0],a=iO(e.arrow);return iI({id:`${e.arrow.id}:label`,containerId:e.arrow.id,fontSize:13,...void 0===e.arrow.locked?{}:{locked:e.arrow.locked},maxWidth:160,...e.arrow.textColor?{textColor:e.arrow.textColor}:{},text:e.arrow.label,wrap:!0,x:(t.x+a.x)/2,y:(t.y+a.y)/2-10})}({arrow:t}):null;l&&v.push(l)}let y=new Map(v.map(e=>[e.id,e]));for(let t of u)if(v.push(function(e){let[t,...a]=e.element.points,s=a[a.length-1]??t,l=void 0!==e.element.startArrowhead||void 0!==e.element.endArrowhead||void 0!==e.element.startBinding||void 0!==e.element.endBinding,i=l&&e.element.points.length>2;return{...iF(e.element.id,e.element),type:l?"arrow":"line",x:t.x,y:t.y,width:s.x-t.x,height:s.y-t.y,backgroundColor:e.element.fillColor??"transparent",boundElements:null,...l?{elbowed:i}:{},endArrowhead:e.element.endArrowhead??null,endBinding:iU(e.element.endBinding,e.elementsById,s),...i?{fixedSegments:[],startIsSpecial:null,endIsSpecial:null}:{},points:e.element.points.map(e=>[e.x-t.x,e.y-t.y]),roundness:e.element.points.length>2&&!i?{type:2}:null,startArrowhead:e.element.startArrowhead??null,startBinding:iU(e.element.startBinding,e.elementsById,t),strokeColor:e.element.strokeColor??e.scene.accentColor}}({element:t,elementsById:y,scene:e})),t.label){let e=t.points[0],a=t.points[t.points.length-1]??e;v.push(iI({id:`${t.id}:label`,fontSize:13,...void 0===t.locked?{}:{locked:t.locked},maxWidth:160,...t.textColor?{textColor:t.textColor}:{},text:t.label,wrap:!0,x:(e.x+a.x)/2,y:(e.y+a.y)/2-10}))}return v}(e,n,c,p,h),u=new Map(e.zOrder.map((e,t)=>[e,t])),f=e=>{if(u.has(e.id))return e.id;let t=h.get(e.id);return t||(e.id.endsWith(":label")?e.id.slice(0,-6):e.id)};g.sort((e,t)=>(u.get(f(e))??Number.MAX_SAFE_INTEGER)-(u.get(f(t))??Number.MAX_SAFE_INTEGER));let m=null;for(let e of g){let t=function(e,t,a,s){if(void 0!==s){var l=s;if(!i_.has(l)){if(l.length<2||l.length%2!=0||!iM(l))throw Error("intDigits must be an even number of at least 2 characters in strictly ascending character code order: "+l);if(!iC(l))throw Error("intDigits must be single-byte (char code 0-255): "+l);i_.add(l)}}else s=a??ip;if(void 0!==a){var i=a;if(!iz.has(i)){if(i.length<2||!iM(i))throw Error("digits must be at least 2 characters in strictly ascending character code order: "+i);if(!iC(i))throw Error("digits must be single-byte (char code 0-255): "+i);iz.add(i)}}else a=id;let o=ig(a),r=ig(s);if(null!=e&&iw(e,a,s,r),null!=t&&iw(t,a,s,r),null!=e&&null!=t&&e>t){let a=e;e=t,t=a}if(null==e){if(null==t)return s[s.length/2]+a[0];let e=iy(t,s,r),l=t.slice(e.length);if(ik(e,a,s))return e+iu("",l,a,o);if(e<t)return e;let i=function(e,t,a,s,l){im(e,s,l);let i=e[0],o=t[t.length-1],r="";for(let s=e.length-1;s>=1;s--){let l=a[e.charCodeAt(s)]-1;if(-1!==l)return i+e.slice(1,s)+t[l]+r;r=o+r}let n=l[i.charCodeAt(0)];if(0===n)return null;let c=s[n-1],d=iv(c,s,l)-iv(i,s,l);return c+(d>0?r+o:d<0?r.slice(1):r)}(e,a,o,s,r);if(null==i)throw Error("cannot decrement any more");return i}if(null==t){let t=iy(e,s,r),l=e.slice(t.length),i=ix(t,a,o,s,r);return null==i?t+iu(l,null,a,o):i}let n=iy(e,s,r),c=e.slice(n.length),d=iy(t,s,r),p=t.slice(d.length);if(n===d)return n+iu(c,p,a,o);let h=ix(n,a,o,s,r);if(null==h)throw Error("cannot increment any more");return h<t?h:n+iu(c,null,a,o)}(m,null);e.index=t,m=t}return{appState:{viewBackgroundColor:e.backgroundColor,zoom:{value:Math.max(.42,Math.round(100*Math.min(1,860/Math.max(e.width,1),340/Math.max(e.height,1)))/100)}},elements:g,files:p}}(e.scene);return{excalidraw:t,validation:function(e){let t=[],a=new Map(e.elements.map(e=>[e.id,e])),s=new Set(e.elements.filter(i$).map(e=>e.id));for(let l of(0===e.elements.length&&t.push({code:"empty-scene",message:"Excalidraw scene must contain at least one shape."}),e.elements)){if("image"!==l.type||"string"==typeof l.fileId&&e.files&&Object.hasOwn(e.files,l.fileId)||t.push({code:"missing-image-file",elementId:l.id,message:`Image "${l.id}" references a file missing from the scene.`}),"arrow"===l.type){let e=!0===l.elbowed;for(let i of((Array.isArray(l.points)?l.points:[]).length>2&&!e&&t.push({code:"invalid-elbow-binding",elementId:l.id,message:`Arrow "${l.id}" has an orthogonal route but is not marked elbowed.`}),e&&null!==l.fixedSegments&&!Array.isArray(l.fixedSegments)&&t.push({code:"invalid-elbow-binding",elementId:l.id,message:`Elbow arrow "${l.id}" is missing fixedSegments metadata.`}),["startBinding","endBinding"])){if(null===l[i]||void 0===l[i])continue;let o=iD(l,i);if(!(o&&s.has(o))){t.push({code:"missing-arrow-binding",elementId:l.id,message:`Arrow "${l.id}" has invalid ${i}.`});continue}let r=a.get(o);r&&!function(e,t,a){let s=e.boundElements;return!!Array.isArray(s)&&s.some(e=>!!(e&&"object"==typeof e)&&e.id===t&&e.type===a)}(r,l.id,"arrow")&&t.push({code:"missing-bound-arrow",elementId:r.id,message:`Shape "${r.id}" does not include bound arrow "${l.id}".`});let n=function(e,t){let a=iA(e.x)??0,s=iA(e.y)??0,l=Array.isArray(e.points)?e.points.map(iS).filter(e=>!!e):[],i="startBinding"===t?l[0]:l[l.length-1];return i?{x:a+i[0],y:s+i[1]}:null}(l,i);if(r&&n&&!function(e,t){let a=iP(t);if(!a)return!1;if("diamond"===t.type){let t=a.width/2,s=a.height/2;if(0===t||0===s)return!1;let l=a.x+t,i=a.y+s;return iN(Math.abs(e.x-l)/t+Math.abs(e.y-i)/s,1)}if("ellipse"===t.type){let t=a.width/2,s=a.height/2;if(0===t||0===s)return!1;let l=a.x+t,i=a.y+s;return iN(((e.x-l)/t)**2+((e.y-i)/s)**2,1)}let s=(iN(e.x,a.x)||iN(e.x,a.x+a.width))&&ij(e.y,a.y,a.y+a.height),l=(iN(e.y,a.y)||iN(e.y,a.y+a.height))&&ij(e.x,a.x,a.x+a.width);return s||l}(n,r)&&t.push({code:"arrow-endpoint-off-shape",elementId:l.id,message:`Arrow "${l.id}" ${i} endpoint does not land on "${r.id}".`}),r&&n&&e){let e=function(e,t){let a=e[t];return a&&"object"==typeof a?iS(a.fixedPoint):null}(l,i);e&&function(e,t,a){let s=iP(a);if(!s)return!1;let l=1e-4>Math.abs(e[0]-.5001)?.5:e[0],i=1e-4>Math.abs(e[1]-.5001)?.5:e[1];return iN(s.x+l*s.width,t.x)&&iN(s.y+i*s.height,t.y)}(e,n,r)||t.push({code:"invalid-elbow-binding",elementId:l.id,message:`Elbow arrow "${l.id}" has invalid ${i} fixedPoint metadata.`})}}}if("text"===l.type){let e=l.containerId;if("string"!=typeof e)continue;let s=a.get(e);if(!s){t.push({code:"missing-container",elementId:l.id,message:`Text "${l.id}" references missing container "${e}".`});continue}let i=("number"==typeof l.width?l.width:0)-("number"==typeof l.fontSize?l.fontSize:0),o="number"==typeof l.height?l.height:0,r="number"==typeof s.width?s.width:0,n="number"==typeof s.height?s.height:0;i$(s)&&(i+24>r||o+18>n)&&t.push({code:"text-overflow",elementId:l.id,message:`Text "${l.id}" does not fit inside "${e}".`})}}return t.push(...function(e){let t=e.filter(e=>"arrow"===e.type).flatMap(iR),a=e.filter(i$),s=new Map(e.flatMap(e=>"string"==typeof e.frameId?[[e.id,e.frameId]]:[])),l=[],i=new Set;for(let e of t)for(let t of a){if(function(e){let t=e.customData;if(null===t||"object"!=typeof t)return!1;let a=t.sketchiRendererRole;return to.some(e=>e===a)}(t)||t.id===e.startBindingId||t.id===e.endBindingId||function(e,t,a){return"frame"===e.type&&[t.arrowId,t.startBindingId,t.endBindingId].some(t=>null!==t&&a.get(t)===e.id)}(t,e,s))continue;let a=iP(t);if(!a||!tS(e,a))continue;let o=`${e.arrowId}:${e.segmentIndex}:${t.id}`;i.has(o)||(i.add(o),l.push({code:"arrow-segment-through-node",elementId:e.arrowId,message:`Arrow "${e.arrowId}" passes through shape "${t.id}".`}))}return l}(e.elements)),t.push(...function(e){let t=e.filter(e=>"arrow"===e.type).flatMap(iR),a=[],s=new Set;for(let e=0;e<t.length;e+=1){let l=t[e];if(l)for(let i=e+1;i<t.length;i+=1){let e=t[i];if(!e||l.arrowId===e.arrowId||function(e,t){if(!tP(e,t))return!1;let a=e.isFirstSegment&&t.isFirstSegment&&null!==e.startBindingId&&e.startBindingId===t.startBindingId;return .01>=Math.abs((a?e.startCoordinate:e.endCoordinate)-(a?t.startCoordinate:t.endCoordinate))&&Math.sign(e.endCoordinate-e.startCoordinate)===Math.sign(t.endCoordinate-t.startCoordinate)}(l,e)||!tA(l,e))continue;let o=[l.arrowId,String(l.segmentIndex),e.arrowId,String(e.segmentIndex)].sort().join(":");s.has(o)||(s.add(o),a.push({code:"overlapping-arrow-segment",elementId:l.arrowId,message:`Arrow "${l.arrowId}" overlaps arrow "${e.arrowId}".`}))}}return a}(e.elements)),{ok:0===t.length,issues:t}}(t)}}).pipe(o.fRP("codeMode.artifacts.exportValidate")),i=e.validationIssues(l.issues);if(i.length>0)return yield*new cE({status:"export_failed",issues:i});let r=yield*de({formats:e.formats,scene:e.scene,excalidraw:s,renderer:t.renderer}).pipe(o.xm_(e=>new cE({status:"export_failed",issues:[cJ({code:"render_failed",stage:"export",..."CodeModeArtifactRendererNotConfigured"===e._tag?{ref:{kind:"artifact",path:"options.artifactFormats"}}:{},message:e.message,hint:"CodeModeArtifactRendererNotConfigured"===e._tag?"Use the hosted Studio Code Mode runtime with its Cloudflare Browser Run binding, or omit png from artifactFormats.":"Retry the request; if it keeps failing, inspect the configured renderer."})]}))),n=yield*o.OH5(()=>t.createId("artifact"));var c=yield*n1(a.write({artifactId:n,diagramId:e.scene.diagramId,formats:r,inlineFormats:e.inlineFormats,...e.provenance?{provenance:e.provenance}:{}}).pipe(o.fRP("codeMode.artifacts.store")),{artifactId:n,...e.requestId?{requestId:e.requestId}:{}}).pipe(o.xm_(e=>new cO({status:"storage_failed",cause:e,issues:[d_(e,"storage_write_failed")]}))),d=t.artifactUrl;if(!d)return c;let p=c.formats.map(e=>({...e,url:d({artifactId:c.artifactId,format:e.format})})),h=c.preview?p.find(e=>e.format===c.preview?.format):void 0;return{...c,formats:p,...h?{preview:h}:{}}}),dB=o.fn("codeMode.buildMindmap.workflow")(function*(e){var t,a;let s,i,r,n,c,d,p,h,g,u=function(e){let t=c_(c_(c_(e)?.spec)?.root);if(!t)return[];let a=[{depth:0,topic:t}],s=1;for(;a.length>0;){let e=a.pop();if(!e)continue;if(e.depth>8)return[cJ({code:"mindmap_too_deep",stage:"mindmap",ref:{kind:"request",path:"spec.root.children"},message:"Mindmap depth exceeds the supported maximum of 8.",hint:"Combine overly deep topics into a shallower hierarchy."})];let t=e.topic.children;if(Array.isArray(t)){if((s+=t.length)>100)return[cJ({code:"mindmap_too_large",stage:"mindmap",ref:{kind:"request",path:"spec.root"},message:"Mindmap exceeds the supported maximum of 100 topic slots.",hint:"Split this hierarchy into smaller focused mindmaps."})];for(let s=t.length-1;s>=0;s-=1){let l=c_(t[s]);l&&a.push({depth:e.depth+1,topic:l})}}}return[]}(e);if(u.length>0)return yield*new cY({status:"invalid_mindmap",context:{issues:u}});let f=l.q$Z(sq,{errors:"all",reportInput:!0})(e);if(!n2.oJ(f))return yield*new cY({status:"invalid_input",context:{issues:c5(ae(f.failure))}});let m=yield*cC,v=f.success,w=yield*o.OH5(()=>m.createId("build")),x=(t=v.spec,s=(e,t)=>({id:`topic-${t.join("-")}`,label:t4(e.label),children:(e.children??[]).map((e,a)=>s(e,[...t,a]))}),i=t4(t.title),{id:c6(t.id)??(c4(i)||"sketchi-mindmap"),title:i,root:s(t.root,[0]),layout:{direction:t.layout.direction},style:{...y}}),b={buildId:w,...dM(v.requestId),normalizedSpec:x},k=(r=0,n=0,(c=(e,t)=>{r+=1,n=Math.max(n,t),e.children.forEach(e=>c(e,t+1))})(x.root,0),p=[],(d={count:r,depth:n}).count<2&&p.push(cJ({code:"disconnected_graph",stage:"mindmap",ref:{kind:"diagram",id:x.id},message:"Mindmap root must contain at least one child topic.",hint:"Add one or more nested topics under spec.root.children."})),d.depth>8&&p.push(cJ({code:"mindmap_too_deep",stage:"mindmap",ref:{kind:"diagram",id:x.id},message:`Mindmap depth ${d.depth} exceeds the supported maximum of 8.`,hint:"Combine overly deep topics into a shallower hierarchy."})),d.count>100&&p.push(cJ({code:"mindmap_too_large",stage:"mindmap",ref:{kind:"diagram",id:x.id},message:`Mindmap has ${d.count} topics; the supported maximum is 100.`,hint:"Split this hierarchy into smaller focused mindmaps."})),p);if(k.length>0)return yield*new cY({status:"invalid_mindmap",context:{...b,issues:k}});let M=yield*o.SvU({try:()=>{let e,t,a;return e=[],t=[],(a=(s,l,i,o)=>{e.push({id:s.id,label:s.label,kind:0===l?"root":"topic",metadata:{depth:l,siblingIndex:i}}),o&&t.push({id:`branch-${s.id.slice(6)}`,source:o,target:s.id,metadata:{depth:l,siblingIndex:i}}),s.children.forEach((e,t)=>a(e,l+1,t,s.id))})(x.root,0,0),ez({id:x.id,title:x.title,type:"mindmap",nodes:e,edges:t,layout:{direction:x.layout.direction,edgeRouting:"curved"},style:{...y}})},catch:e=>new cY({status:"invalid_mindmap",context:{...b,issues:[cJ({code:"disconnected_graph",stage:"mindmap",ref:{kind:"diagram",id:x.id},message:e instanceof Error?e.message:"Mindmap failed core validation.",hint:"Repair the nested topic hierarchy and call buildMindmap again."})]}})}),C=(a=v.options?.minQualityScore??8,{accepted:(g=Math.max(0,10-2*(h=M.nodes.filter(e=>/^(topic|branch|item|mindmap)$/i.test(e.label.trim()))).length))>=a,score:g,threshold:a,summary:{nodeCount:M.nodes.length,edgeCount:M.edges.length},checks:h.map(e=>({code:"generic_label",passed:!1,severity:"warning",message:`Topic "${e.label}" is too generic.`,refs:[{kind:"node",id:e.id}]}))}),z={...b,quality:C};if(!C.accepted)return yield*new cY({status:"quality_failed",context:{...z,issues:c7(C)}});let _=yield*o.SvU({try:()=>nb(M),catch:e=>new cY({status:"render_failed",context:{...z,issues:[cJ({code:"render_failed",stage:"render",ref:{kind:"diagram",id:x.id},message:e instanceof Error?e.message:"Unable to render mindmap scene.",hint:"Simplify the hierarchy or retry with a smaller mindmap."})]}})}).pipe(o.fRP("codeMode.buildMindmap.render")),L={...z,partial:dC(_)},B=yield*dL({scene:_,formats:c8(v.options),inlineFormats:c9(v.options),...v.requestId?{requestId:v.requestId}:{},validationIssues:dt}).pipe(o.xm_(e=>new cY({status:e.status,context:{..."export_failed"===e.status?L:{...z,partial:{diagramId:_.diagramId}},issues:e.issues}})));return{ok:!0,status:"accepted",buildId:w,...dM(v.requestId),normalizedSpec:x,quality:C,artifact:B,issues:[]}}),dA=o.fn("codeMode.buildSequenceDiagram.workflow")(function*(e){var t,a;let s,i=l.q$Z(sb,{errors:"all",reportInput:!0})(e);if(!n2.oJ(i))return yield*new cT({status:"invalid_input",context:{issues:c5(ae(i.failure))}});let r=yield*cC,n=i.success,c=yield*o.OH5(()=>r.createId("build")),d=(s=t4((t=n.spec).title),{id:c6(t.id)??(c4(s)||"sketchi-sequence"),title:s,participants:t.participants.map(e=>({id:t4(e.id),label:t4(e.label),...e.kind?{kind:t4(e.kind)}:{},...e.icon?{icon:{slug:e.icon.slug}}:{}})),messages:t.messages.map((e,t)=>({id:c6(e.id)??`message-${t+1}-${c4(e.source)}-${c4(e.target)}`,source:t4(e.source),target:t4(e.target),label:t4(e.label),...e.type?{type:e.type}:{},...e.style?{style:e.style}:{}})),style:{...y}}),p=cc(d.participants,r.icons,{noun:"participant",path:"participants"}),h={...d,participants:p.nodes},g={buildId:c,...dM(n.requestId),normalizedSpec:h},u=eE(cA(h)).map(e=>cJ({code:cS[e.code],stage:"input",ref:{kind:"request",path:`spec.${e.path}`},message:e.message,hint:cP[e.code]??e.hint}));if(u.length>0)return yield*new cT({status:"invalid_sequence",context:{...g,issues:u}});let f={accepted:10>=(a=n.options?.minQualityScore??8),score:10,threshold:a,summary:{nodeCount:h.participants.length,edgeCount:h.messages.length},checks:[]},m={...g,quality:f};if(!f.accepted)return yield*new cT({status:"quality_failed",context:{...m,issues:c7(f)}});let v=yield*o.SvU({try:()=>{let e,t,a,s,l,i,o,r,n,c,d,p,g,u,f,m,v,y,w,x;return s=(a=Math.max(180,...[...(t=new Map((e=eU(cA(h))).participants.map(e=>[e.id,ta(e.label,156,14)]))).values()].map(e=>Math.ceil(e8(e,14))+24)))+140,r=(o=(i=48+(l=e.participants.reduce((e,a)=>Math.max(e,Math.ceil(14*(t.get(a.id)??a.label).split("\n").length*1.35)+18+tu(a.icon?{slug:a.icon.slug,size:28}:void 0)),72)))+64)+88*Math.max(0,e.messages.length-1),n=Math.max(o,r)-i+56,c=new Map,d=[],p=[],g=[],e.participants.forEach((o,r)=>{let h=48+r*s,u=h+a/2;c.set(o.id,u),d.push({type:"node",id:`node:${o.id}`,nodeId:o.id,...o.kind?{kind:o.kind}:{},...o.icon?{icon:{slug:o.icon.slug,size:28}}:{},shape:"rectangle",x:h,y:48,width:a,height:l,label:t.get(o.id)??o.label}),p.push({type:"text",id:`label:${o.id}`,containerId:`node:${o.id}`,x:u,y:48+l/2,text:t.get(o.id)??o.label,fontSize:14,maxWidth:a-24,...o.icon?{verticalAlign:"bottom"}:{}}),g.push({type:"node",id:`node:${eS(o.id)}`,nodeId:eS(o.id),rendererRole:"sequence-lifeline",shape:"rectangle",fillColor:e.style.backgroundColor,strokeColor:e.style.accentColor,x:u-1,y:i,width:2,height:n,label:`${o.label} lifeline`})}),u=new Map(e.participants.map(e=>[e.id,e.label])),f=(function(e){let t=new Map,a=[];e.messages.forEach((e,s)=>{if("return"!==e.type)return void t.set(e.target,[...t.get(e.target)??[],{caller:e.source,index:s,messageId:e.id}]);let l=t.get(e.source)??[],i=l.findLastIndex(t=>t.caller===e.target),o=l[i];o&&(t.set(e.source,l.filter((e,t)=>t!==i)),a.push({participantId:e.source,callMessageId:o.messageId,returnMessageId:e.id,startIndex:o.index,endIndex:s}))});let s=[];for(let e of a.toSorted((e,t)=>e.startIndex-t.startIndex)){let t=s.filter(t=>t.participantId===e.participantId&&t.endIndex>e.startIndex),a=new Set(t.map(e=>e.depth)),l=Math.max(0,...t.filter(t=>t.endIndex>e.endIndex).map(e=>e.depth+1));for(;a.has(l);)l+=1;s.push({...e,depth:l})}return s})(e).map(t=>{var a,s;let l=(a=t.participantId,s=t.callMessageId,`${eS(a)}:activation:${s}`),i=c.get(t.participantId)??0,r=o+88*t.startIndex-12;return{activation:t,node:{type:"node",id:`node:${l}`,nodeId:l,rendererRole:"sequence-activation",shape:"rectangle",fillColor:e.style.backgroundColor,strokeColor:e.style.accentColor,x:i-6+6*t.depth,y:r,width:12,height:o+88*t.endIndex+12-r,label:`${u.get(t.participantId)??t.participantId} active`}}}),m=(e,t,a,s)=>{let l=c.get(e)??0,i=s>l,o=f.filter(({activation:a})=>a.participantId===e&&a.startIndex<=t&&t<=a.endIndex),r=o.find(({activation:e})=>e.callMessageId===a||e.returnMessageId===a)??o.reduce((e,t)=>!e||t.activation.depth>e.activation.depth?t:e,void 0);return r?{nodeId:r.node.nodeId,x:i?r.node.x+r.node.width:r.node.x}:{nodeId:eS(e),x:l+(i?1:-1)*2/2}},v=e.messages.map((e,t)=>{let a,l=c.get(e.source)??0,i=c.get(e.target)??0,r=m(e.source,t,e.id,i),n=m(e.target,t,e.id,l),d=o+88*t;return{type:"arrow",id:`arrow:${e.id}`,edgeId:e.id,sourceNodeId:r.nodeId,targetNodeId:n.nodeId,..."return"===e.type?{strokeColor:"#6b7280"}:{},..."dashed"===e.style||"return"===e.type?{strokeStyle:"dashed"}:{},points:[{x:r.x,y:d},...(a=Math.round(Math.abs(i-l)/s))<2||a%2==1?[]:[{x:(l+i)/2-Math.sign(i-l)*s/2,y:d}],{x:n.x,y:d}],label:e.label}}),y=f.map(({node:e})=>e),w=[...v,...g,...y,...d,...p],x=[...g.map(e=>e.id),...y.map(e=>e.id),...d.map(e=>e.id),...p.map(e=>e.id),...v.map(e=>e.id)],{kind:"canvas",version:1,diagramId:e.id,title:e.title,width:96+a+Math.max(0,e.participants.length-1)*s,height:i+n+48,accentColor:e.style.accentColor,backgroundColor:e.style.backgroundColor,elements:w,layers:[],layouts:[],zOrder:x}},catch:e=>new cT({status:"render_failed",context:{...m,issues:[cJ({code:"render_failed",stage:"render",ref:{kind:"diagram",id:h.id},message:e instanceof Error?e.message:"Unable to render sequence diagram scene.",hint:"Repair the participant/message structure and retry."})]}})}).pipe(o.fRP("codeMode.buildSequenceDiagram.render")),w=yield*cd(v,r.icons),x=w.scene,b=ty(x);if(b.length>0)return yield*new cT({status:"render_failed",context:{...m,issues:da(b).map(e=>({...e,hint:"Reduce participant label lines, participants, or messages and retry buildSequenceDiagram."}))}});let k={...m,partial:dC(x)},M=yield*dL({scene:x,formats:c8(n.options),inlineFormats:c9(n.options),...n.requestId?{requestId:n.requestId}:{},validationIssues:dt}).pipe(o.xm_(e=>new cT({status:e.status,context:{..."export_failed"===e.status?k:m,issues:e.issues}})));return{ok:!0,status:"accepted",buildId:c,...dM(n.requestId),normalizedSpec:h,quality:f,artifact:M,issues:[...p.issues,...w.issues]}}),dS=o.fn("codeMode.buildStateMachine.workflow")(function*(e){var t,a;let s,i,r=l.q$Z(sz,{errors:"all",reportInput:!0})(e);if(!n2.oJ(r))return yield*new cZ({status:"invalid_input",context:{issues:c5(ae(r.failure))}});let n=yield*cC,c=r.success,d=yield*o.OH5(()=>n.createId("build")),p=(s=t4((t=c.spec).title),i=(e,t)=>t&&t4(t)?{[e]:t4(t)}:{},{id:c6(t.id)??(c4(s)||"sketchi-state-machine"),title:s,initial:t4(t.initial),states:t.states.map(e=>({id:t4(e.id),...i("label",e.label),...e.kind?{kind:e.kind}:{},...i("parent",e.parent),...i("initial",e.initial)})),transitions:t.transitions.map((e,t)=>({id:c6(e.id)??`transition-${t+1}-${c4(e.source)}-${c4(e.target)}`,source:t4(e.source),target:t4(e.target),...i("event",e.event),...i("guard",e.guard),...i("action",e.action)})),...t.layout?{layout:{direction:t.layout.direction}}:{},style:{...y}}),h={buildId:d,...dM(c.requestId),normalizedSpec:p},g=eQ(cV(p)).map(e=>cJ({code:cH[e.code],stage:"input",ref:{kind:"request",path:`spec.${e.path}`},message:e.message,hint:e.hint}));if(g.length>0)return yield*new cZ({status:"invalid_state_machine",context:{...h,issues:g}});let u={accepted:10>=(a=c.options?.minQualityScore??8),score:10,threshold:a,summary:{nodeCount:p.states.length,edgeCount:p.transitions.length},checks:[]},f={...h,quality:u};if(!u.accepted)return yield*new cZ({status:"quality_failed",context:{...f,issues:c7(u)}});let m=yield*o.SvU({try:()=>(function(e){let t=t=>nk(function(e,t){let a=eJ(e),s=(e,t,a,s)=>({id:e,label:t,kind:a,metadata:{},...s?{group:s}:{}}),l=(e,t,a,s)=>({id:e,source:t,target:a,metadata:{},...s?{label:s}:{}}),i=new Set(e.transitions.map(e=>e.id)),o=e=>{let t=e;for(let a=2;i.has(t);a+=1)t=`${e}~${a}`;return i.add(t),t},r=[s(nC,"","initial")],n=[l(o(nC),nC,e.initial)],c=new Map,d=new Map;for(let t of e.states){if("final"!==eW(t)||t.label)continue;let a=e.transitions.filter(e=>e.target===t.id),s=a.map((e,a)=>0===a?t.id:`${t.id}:${a+1}`);a.forEach((e,t)=>c.set(e.id,s[t])),d.set(t.id,s.length>0?s:[t.id])}for(let t of e.states){let e=t.parent;if(a.has(t.id)){t.initial&&(r.push(s(`${t.id}${nC}`,"","initial",t.id)),n.push(l(o(`${t.id}${nC}`),`${t.id}${nC}`,t.initial)));continue}let i=eW(t);if("final"===i&&!t.label){for(let a of d.get(t.id))r.push(s(a,"","final",e));continue}if("final"===i){r.push(s(t.id,t.label,"state",e)),r.push(s(`${t.id}:end`,"","final",e)),n.push(l(o(`${t.id}:end`),t.id,`${t.id}:end`));continue}r.push(s(t.id,t.label??"",i,e))}for(let t of e.transitions){let e=function(e){let t=e.guard?eK(e.guard,/^\s*\[|\]\s*$/gu):"",a=e.action?eK(e.action,/^\s*\//u):"";return[e.event?.trim(),t&&`[${t}]`,a&&`/ ${a}`].filter(Boolean).join(" ")}(t);n.push(l(t.id,t.source,c.get(t.id)??t.target,e||void 0))}return{id:e.id,title:e.title,type:"flowchart",nodes:r,edges:n,groups:e.states.filter(e=>a.has(e.id)).map(e=>({id:e.id,label:e.label??e.id})),layout:{direction:t,edgeRouting:"orthogonal"},style:e.style,metadata:{}}}(e,t),{pairedReturns:!0});if(e.layout)return t(e.layout.direction);let a=["LR","TB"].map(e=>{let a,s=t(e);return{aspect:Math.max(s.width/s.height,s.height/s.width),cost:ng(a=s.elements.filter(e=>"arrow"===e.type))+tj(a.map(e=>({id:e.id,points:e.points,sourceId:e.sourceNodeId,targetId:e.targetNodeId})),tX({width:s.width,height:s.height})).length,scene:s}}),s=a.filter(e=>e.aspect<=2.2),[l]=s.length>0?s.toSorted((e,t)=>e.cost-t.cost):a.toSorted((e,t)=>e.aspect-t.aspect);return l.scene})(cV(p)),catch:e=>new cZ({status:"render_failed",context:{...f,issues:[cJ({code:"render_failed",stage:"render",ref:{kind:"diagram",id:p.id},message:e instanceof Error?e.message:"Unable to render state machine scene.",hint:"Repair the state and transition structure and retry."})]}})}).pipe(o.fRP("codeMode.buildStateMachine.render")),v=ty(m);if(v.length>0)return yield*new cZ({status:"render_failed",context:{...f,issues:da(v).map(e=>({...e,hint:"Shorten state labels or split the machine and retry buildStateMachine."}))}});let w={...f,partial:dC(m)},x=yield*dL({scene:m,formats:c8(c.options),inlineFormats:c9(c.options),...c.requestId?{requestId:c.requestId}:{},validationIssues:dt}).pipe(o.xm_(e=>new cZ({status:e.status,context:{..."export_failed"===e.status?w:f,issues:e.issues}})));return{ok:!0,status:"accepted",buildId:d,...dM(c.requestId),normalizedSpec:p,quality:u,artifact:x,issues:[]}}),dP=o.fn("codeMode.buildTimeline.workflow")(function*(e){var t,a;let s,i,r=l.q$Z(sk,{errors:"all",reportInput:!0})(e);if(!n2.oJ(r))return yield*new cG({status:"invalid_input",context:{issues:c5(ae(r.failure))}});let n=yield*cC,c=r.success,d=yield*o.OH5(()=>n.createId("build")),p=(s=t4((t=c.spec).title),{id:(i={id:c6(t.id)??(c4(s)||"sketchi-timeline"),title:s,type:"timeline",style:{...y},events:t.events.map(e=>({...e}))}).id,title:s,events:ei(i),...t.lanes?{lanes:[...t.lanes]}:{},...t.today?{today:t.today}:{},style:i.style}),h={buildId:d,...dM(c.requestId),normalizedSpec:p},g=et(cL(p)).map(e=>cJ({code:e.code,stage:"input",ref:{kind:"request",path:`spec.${e.path}`},message:e.message,hint:e.hint}));if(g.length>0)return yield*new cG({status:"invalid_timeline",context:{...h,issues:g}});let u={accepted:10>=(a=c.options?.minQualityScore??8),score:10,threshold:a,summary:{nodeCount:p.events.length,edgeCount:0},checks:[]},f={...h,quality:u};if(!u.accepted)return yield*new cG({status:"quality_failed",context:{...f,issues:c7(u)}});let m=yield*o.SvU({try:()=>(function(e){let t,a,s=es(e),l=ei(s),i=function(e){let t,a=new Map;for(let t of[...e.events.flatMap(e=>[e.date,e.end]),e.today]){let e=void 0===t?void 0:K(t);void 0!==t&&e&&a.set(t,e)}if(0===a.size)return{events:new Map};let s=new Set([...a.values()].flatMap(e=>void 0===e.offsetMinutes?[]:[e.offsetMinutes])),l=1===s.size?[...s][0]??0:0,i=s.size>0?function(e){if(0===e)return"UTC";let t=Math.abs(e);return`UTC${e<0?"-":"+"}${oP(Math.floor(t/60))}:${oP(t%60)}`}(l):void 0,o=new Map([...a].map(([e,t])=>[e,function(e,t){if("instant"!==e.granularity)return{granularity:e.granularity,...e.fields};let a=new Date(e.start+6e4*t);return{granularity:"instant",year:a.getUTCFullYear(),month:a.getUTCMonth()+1,day:a.getUTCDate(),hour:a.getUTCHours(),minute:a.getUTCMinutes(),second:a.getUTCSeconds(),millisecond:a.getUTCMilliseconds()}}(t,l)])),r=[...o.values()],n=r[0],c=r.some(e=>"instant"===e.granularity)&&r.every(e=>("day"===e.granularity||"instant"===e.granularity)&&e.year===n.year&&e.month===n.month&&e.day===n.day),d=r.some(e=>e.year!==n.year),p=r.some(e=>"instant"===e.granularity&&e.second>0),h=r.some(e=>"instant"===e.granularity&&e.millisecond>0),g=e=>`${oP(e.hour)}:${oP(e.minute)}${p||h?`:${oP(e.second)}`:""}${h?`.${oP(e.millisecond,3)}`:""}`,u=e=>`${oS[e.month-1]} ${e.day}`,f=(e,t)=>{if(c)return"instant"===e.granularity?g(e):u(e);let a=t?` ${e.year}`:"";switch(e.granularity){case"year":return String(e.year);case"month":return`${oS[e.month-1]}${a}`;case"day":return`${u(e)}${t?`, ${e.year}`:""}`;case"instant":return`${u(e)}${t?`, ${e.year}`:""}, ${g(e)}`}},m=(e,t,a)=>{if(c)return`${f(e,!1)}–${f(t,!1)}`;if(e.year!==t.year)return`${f(e,!0)} – ${f(t,!0)}`;let s=a&&"year"!==t.granularity?`, ${t.year}`:"";return"day"===e.granularity&&"day"===t.granularity&&e.month===t.month?`${u(e)}–${t.day}${s}`:"month"===e.granularity&&"month"===t.granularity?`${oS[e.month-1]} – ${oS[t.month-1]}${a?` ${t.year}`:""}`:`${f(e,!1)} – ${f(t,!1)}${s}`},v=new Map;for(let a of ei(e)){let e=void 0===a.date?void 0:o.get(a.date);if(!e)continue;let s=void 0===a.end?void 0:o.get(a.end),l=e.year!==t?.year||"month"===e.granularity&&"month"!==t.granularity;v.set(a.id,s?m(e,s,l):f(e,l)),t=s??e}let y=c?`${u(n)}, ${n.year}${i?` \xb7 ${i}`:""}`:i?`Times in ${i}`:void 0,w=void 0===e.today?void 0:o.get(e.today);return{...y?{header:y}:{},events:v,...w?{today:`Today \xb7 ${f(w,d)}`}:{}}}(s),o=ee(s),r=(o.length?o:[""]).map((e,t)=>{let a=oE[t%oE.length];return{...a,stroke:a.stroke||s.style.accentColor}}),n=l[0]?.date!==void 0,c=[],d=e=>{let t=c.findIndex(t=>t.time===e.time&&t.tie===e.tie);return t>=0?t:(c.push(e),c.length-1)},p=void 0===s.today?void 0:K(s.today),h=new Map,g=new Map,u=[!1,!0].flatMap(e=>l.flatMap((t,a)=>{let s,l,i=void 0!==t.end;if(i!==e)return[];let o=n?K(t.date):void 0,r=void 0===t.end?void 0:K(t.end),c=o?o.start:t.order??a,u=t.lane??"",f=r?(c+r.end)/2:c,m=p&&r&&p.start>c&&p.start<r.end,v=r&&(m||h.has(`${u}\0${f}`))?function(e,t,a){let s=[e,...a.filter(a=>a>e&&a<t),t].toSorted((e,t)=>e-t),l={from:e,to:e};for(let[e,t]of s.slice(1).entries())t-s[e]>l.to-l.from&&(l={from:s[e],to:t});return(l.from+l.to)/2}(c,r.end,[...g.get(u)??[],...m?[p.start]:[]]):f,y=d({time:v,tie:(s=`${u}\0${v}`,l=h.get(s)??0,h.set(s,l+1),g.set(u,[...g.get(u)??[],v]),l)});return[{event:t,index:a,span:i,start:i?d({time:c,tie:0}):y,end:r?d({time:r.end,tie:0}):void 0,stem:y}]})).toSorted((e,t)=>e.index-t.index),f=p?d({time:p.start,tie:0}):void 0,m=c.map((e,t)=>({anchor:e,key:t})).toSorted((e,t)=>e.anchor.time-t.anchor.time||e.anchor.tie-t.anchor.tie),y=new Map(m.map((e,t)=>[e.key,t])),w=m.map(e=>e.anchor),x=u.map(e=>{let t=r[e.event.lane?o.indexOf(e.event.lane):0],a=`event:${e.event.id}`,s=i.events.get(e.event.id),l=[...s?[oO(`date:${a}`,s,14,t.ink)]:[],oO(`label:${a}`,e.event.label,16,v.ink),...e.event.description?[oO(`description:${a}`,e.event.description,13,oF)]:[]];return{event:e.event,index:e.index,lane:e.event.lane?o.indexOf(e.event.lane):0,span:e.span,startKey:y.get(e.start),endKey:y.get(e.end??e.start),stemKey:y.get(e.stem),inset:Math.max(10,(s?l[0].width:0)/2-12),parts:l,width:Math.max(...l.map(e=>e.width)),height:l.reduce((e,t)=>e+t.height,0)+2*(l.length-1)}}),b=void 0===f?void 0:y.get(f),k=Math.min(128,Math.max(72,Math.round((a=Math.floor((t=x.map(e=>e.width).toSorted((e,t)=>e-t)).length/2),((t.length%2?t[a]:(t[a-1]+t[a])/2)+16)/2+8)))),M=1.5*k,C=e=>x.some(t=>t.span&&t.startKey<=e&&t.endKey>e),z=w.slice(1).map((e,t)=>e.time-w[t].time),_=new Map,L=e=>{let t=_.get(e);if(!t){var a;let s,l,i,o=(a=z[e],s=(e,t)=>`${e} ${t}${1===e?"":"s"}`,l=e=>s(Math.max(1,Math.round(a/oV[e])),e),i=e=>{let t=a/oV[e];return s(t<10?Math.round(10*t)/10:Math.round(t),e)},a<1e3?l("millisecond"):a<12e4?i("second"):a<72e5?l("minute"):a<1728e5?l("hour"):a<5184e6?l("day"):a<63113904e3?l("month"):i("year"));t={text:o,half:e9(o,13,200)/2+6},_.set(e,t)}return t},B=[...new Set(x.flatMap(e=>[e.startKey,e.endKey]).map(e=>w.findIndex(t=>t.time===w[e].time)))].toSorted((e,t)=>e-t),A=e=>{let t=new Set(e);if(!n)return{x:w.map((e,t)=>t*k),breaks:t};if(w.length<2)return{x:w.map(()=>0),breaks:t};let a=z.reduce((e,t)=>e+t,0),s=x.length*k,l=10*k,i=a>0?s/a:0,o=[...r.flatMap((e,t)=>x.filter(e=>e.lane===t).toSorted((e,t)=>e.stemKey-t.stemKey).flatMap((e,t,a)=>{let s=a[t-1];return s&&s.stemKey!==e.stemKey?[{from:s.stemKey,to:e.stemKey,min:Math.max(28,e.inset+oq+1)}]:[]})),...x.filter(e=>e.span).map(e=>({from:e.startKey,to:e.endKey,min:12}))].filter(e=>e.to>e.from),c=Math.max(28,...o.map(e=>e.min)),d=(e,a)=>{let s=[0],l=0,i=0;return z.forEach((o,r)=>{let n=w[r+1];n.tie>0?s.push(l+n.tie*c):(l=t.has(r)?a?Math.max(l+a.get(r),i+Math.max(M,2*(L(r).half+3+16))):i+M:l+o*e,s.push(l)),i=Math.max(i,s[r+1])}),s},p=()=>{let[e,t]=[d(0),d(1)];return o.map(({from:a,to:s,min:l})=>{let i=e[s]-e[a];return{from:a,to:s,min:l,fixed:i,perScale:t[s]-e[s]-(t[a]-e[a])}})},h=Math.max(0,...x.filter(e=>e.span).map(e=>w[e.endKey].time-w[e.startKey].time)),g=h>0?Math.max(i,2*l/h):1/0,u=i;for(;;){let e=z.reduce((e,a,s)=>e+(t.has(s)?0:a),0),a=t.size&&e>0?Math.min(2*i,Math.max(i,(s-t.size*M)/e)):i,o=p();u=Math.min(Math.max(a,...o.map(({min:e,fixed:t,perScale:a})=>a>0&&t<e?(e-t)/a:0)),g);let r=t.size?2*M:l,n=z.flatMap((e,a)=>t.has(a)||!(e*u>r)||C(a)?[]:[a]);for(let{from:e,to:a,min:s,fixed:l,perScale:i}of o)if(l+i*u<s-1e-6){let s=z.map((e,t)=>({gap:e,key:t})).slice(e,a).filter(({gap:e,key:a})=>e>0&&!t.has(a)).toSorted((e,t)=>t.gap-e.gap||e.key-t.key)[0];s&&n.push(s.key)}if(!n.length)break;for(let e of n)t.add(e)}if(!t.size)return{x:d(u),breaks:t};let f=Math.max(M,...z.map((e,a)=>t.has(a)||C(a)?0:e*u)),m=[...t].filter(e=>z[e]*u>=M),v=Math.min(...m.map(e=>z[e])),y=Math.log2(Math.max(...m.map(e=>z[e]))/v),b=Math.min(.5,y>0?1/y:1/0),_=new Map([...t].map(e=>[e,f*(1+b*Math.log2(Math.max(1,z[e]/v)))])),A=d(u,_),S=new Set(m),P=B.slice(1).flatMap((e,a)=>{let s=B[a],l=z.slice(s,e).map((e,t)=>s+t),i=l.filter(e=>S.has(e)).at(-1);return void 0===i&&l.some(e=>t.has(e))?[]:[{from:s,to:e,elapsed:w[e].time-w[s].time,broken:i}]}),V=e=>A[e.to]-A[e.from];for(let e of P.toSorted((e,t)=>e.elapsed-t.elapsed)){if(void 0===e.broken)continue;let{elapsed:t}=e,a=Math.max(...P.map(e=>1.5*e.elapsed<=t?V(e)+12:e.elapsed<t?V(e):0)),s=Math.min(...P.map(e=>void 0!==e.broken?1/0:e.elapsed>=1.5*t?V(e)-12:e.elapsed>t?V(e):1/0)),l=Math.min(Math.max(V(e),a),s);if(1e-9>Math.abs(l-V(e)))continue;let i=e.broken,o=w.findIndex(e=>e.time===w[i].time);_.set(i,A[i+1]-A[o]+l-V(e)),A=d(u,_)}return{x:A,breaks:t}},S=({x:e,breaks:t})=>{let a=e.map((t,a)=>Math.max(...e.slice(0,a+1))),s=e.map((t,a)=>Math.min(...e.slice(a))),l=t=>(a[t]+e[t+1])/2,i=w.slice(0,-1).flatMap((e,i)=>{if(C(i))return[];let o=s[i+1]-14;if(t.has(i)){let e=l(i)+L(i).half+3+7;return[{key:i,low:e,high:Math.max(e,o),broken:!0}]}let r=a[i]+14;return r<=o?[{key:i,low:r,high:o,broken:!1}]:[]}),r=new Set(x.flatMap(t=>{if(!t.span)return[];let a=e[t.startKey]+Math.max(12,e[t.endKey]-e[t.startKey]);return x.some(s=>!s.span&&s.lane===t.lane&&(s.startKey<t.startKey||s.startKey>=t.endKey)&&e[s.startKey]+oX(s)>e[t.startKey]&&e[s.startKey]-oX(s)<a)?[t.lane]:[]}));return{x:e,breaks:t,reachBefore:a,rowsFor:t=>{let a=e[e.length-1],s=[],l=0,o=-24;for(let e=1;e<t;e+=1){let r=a*e/t,n=i.filter(e=>e.key>=l).map(e=>{let t=Math.min(e.high,Math.max(e.low,r));return{cut:e,at:t,cost:Math.abs(t-r)-(e.broken?k:0)-Math.min(e.high-e.low,2*k)/4}}).toSorted((e,t)=>e.cost-t.cost||e.cut.key-t.cut.key)[0];if(!n)break;s.push({first:l,last:n.cut.key,start:o,end:n.at}),l=n.cut.key+1,o=n.at}return s.push({first:l,last:w.length-1,start:o,end:Math.max(...e)+24}),s},layout:t=>{let a=Math.max(1,o.length);return t.map((t,s)=>{let i=t.start-32*(s>0),o=t=>e[t]-i,n=void 0!==b&&b>=t.first&&b<=t.last?o(b):void 0,c=Array.from({length:a},(e,a)=>(function(e,t,a,s){let l;for(let i of oU){let o=function(e,t,a,s,l){let i=[],o=new Map;for(let t of e.filter(e=>e.span).toSorted((e,t)=>e.startKey-t.startKey)){let e=i.findIndex((e,a)=>a>=s&&e<=t.startKey);for(e<0&&(e=Math.max(s,i.length));i.length<e;)i.push(-1/0);i[e]=t.endKey,o.set(t,e)}let r=i.length,n=22+16*Math.max(0,r-1),c=e=>t(e.stemKey),d=e.toSorted((e,t)=>c(t)-c(e)||t.index-e.index),p={"-1":[],1:[]},h={"-1":[],1:[]},g=[],u=(e,t,a=oq)=>t>e.left-a&&t<e.right+a,f=-1;d.forEach((e,t)=>{let s=c(e),i=d.slice(t+1).map(c),r=l.lookahead?d[t+2]:void 0,m=(e,t,a)=>{if(!r||t>a)return 0;let s=c(r);return s+10+16>e?1e3:Math.max(0,s+r.width/2+16-e)/2},v=s-e.width+e.inset,y=s-e.inset,w=(o.get(e)??0)>0,x=w?1:f,b=e=>e.option.near-(e.side===x?w?120:1:0),k=t=>[x,-x].flatMap(o=>{let d=((t,o)=>{let d=t<0?22:n,g=p[t],f=p[-t],w=[...h[t],...o&&void 0!==a&&Math.abs(a-s)>=14?[{x:a,reach:1/0}]:[]],x=[d,...g.map(e=>e.far+10)].filter(e=>e>=d).toSorted((e,t)=>e-t),b=s-e.width/2,k=[b,v,y,...g.flatMap(t=>[t.right+16,t.left-16-e.width]),...[...w,...i.map(e=>({x:e,reach:0}))].flatMap(t=>{let a=1/0===t.reach?3*oq:oq;return[t.x+a,t.x-a-e.width]}),...r?[c(r)+10+16,c(r)+r.width/2+16]:[]].map(e=>Math.min(y,Math.max(v,e)));for(let t of x){let a=t+e.height,o=a=>Math.abs(a-b)+m(a,t,d)+l.coverPenalty*i.slice(1).filter(t=>u({left:a,right:a+e.width},t)).length;for(let l of k.toSorted((e,t)=>o(e)-o(t)||e-t)){let o=l+e.width,r={left:l,right:o};if(g.every(e=>l>=e.right+16||e.left>=o+16||t>=e.far+10||e.near>=a+10)&&g.every(e=>!u(e,s)||e.near>t)&&w.every(e=>!u(r,e.x,1/0===e.reach?3*oq:oq)||e.reach<=t)&&i.every(e=>!u(r,e)||f.every(t=>!u(t,e))))return{near:t,left:l}}}})(o,t);return d?[{side:o,option:d}]:[]}).toSorted((e,t)=>b(e)-b(t))[0],M=k(!0)??k(!1);if(!M)throw Error(`Timeline label for "${e.event.id}" has no clear placement.`);let{side:C,option:z}=M,{near:_,left:L}=z;p[C].push({left:L,right:L+e.width,near:_,far:_+e.height}),h[C].push({x:s,reach:_});let B=o.get(e)??0,A=16*B;g.push({item:e,stemX:s,side:C,near:_,left:L,stemStart:C>0?A+oX(e):oX(e)-A,track:B}),f=-C});let m=(e,t)=>Math.max(t,...p[e].map(e=>e.far));return{placements:g,above:m(-1,15),below:m(1,Math.max(9,n-22+6)+6),tracks:r}}(e,t,a,s,i);(!l||o.above+o.below<l.above+l.below)&&(l=o)}return l})(x.filter(e=>e.lane===a&&e.startKey>=t.first&&e.startKey<=t.last),o,n,+!!r.has(a)));return{row:t,localX:o,breakX:e=>l(e)-i,todayX:n,lanes:c,axisStart:t.start-i,axisEnd:t.end-i}})}}},P=o.length?Math.max(...o.map(e=>e9(e,15,160)))+20:0,V=i.header,H=i.today,q=(e,t)=>{var a,s;let l,i,n,c,d,p,h,g,u,f,m=e.rowsFor(t);if(m.length<t)return;let v=(a=e.breaks,s=e.layout(m),l=[],i=[],n=[],c=[],d=(e,t)=>{l.push(e),t.push(e.id)},p=(e,t,a={})=>({type:"line",id:e,points:t,...a}),h=(e,t,a,s,l,i,o={})=>({type:"text",id:e,x:a,y:s,text:t,fontSize:l,maxWidth:200,textColor:i,...o}),g=V?Math.ceil(14*1.35):0,u=18*!!H,f=V?g+18:0,s.forEach((e,t)=>{let l=f,g=void 0!==e.todayX;g&&(f+=u+6);let m=t<s.length-1,v=t>0;if(e.lanes.forEach((s,l)=>{let g=r[l],u=f+s.above,y=`${l}:${t}`,w={strokeColor:g.stroke,strokeWidth:2,roughness:0},x=[...a].toSorted((e,t)=>e-t).filter(t=>t>=e.row.first&&t<=e.row.last).map(t=>({x:P+e.breakX(t),...L(t)})),b=[P+e.axisStart,...x.flatMap(e=>[e.x-e.half,e.x+e.half]),P+e.axisEnd];for(let e=0;e<b.length;e+=2)b[e+1]>b[e]&&d(p(`axis:${y}${e?`:${e/2}`:""}`,[{x:b[e],y:u},{x:b[e+1],y:u}],w),i);for(let t of(x.forEach((e,t)=>{for(let a of[-1,1])d(p(`break:${y}:${t}:${a<0?"a":"b"}`,[{x:e.x+a*e.half-3,y:u+7},{x:e.x+a*e.half+3,y:u-7}],w),c);d(h(`break-label:${y}:${t}`,e.text,e.x,u,13,g.ink),c)}),v&&d(p(`continue-in:${y}`,[{x:P,y:u},{x:P+32,y:u}],{...w,strokeStyle:"dashed"}),i),m&&d(p(`continue-out:${y}`,[{x:P+e.axisEnd,y:u},{x:P+e.axisEnd+32,y:u}],{...w,strokeStyle:"dashed",endArrowhead:"arrow"}),i),o.length&&d(h(`lane:${y}`,o[l],P-16-e9(o[l],15,160)/2,u,15,g.ink,{maxWidth:160,textAlign:"right"}),c),s.placements)){let{item:a}=t,s=`event:${a.event.id}`,l={groupIds:[s]},o=u+16*t.track,r=P+t.stemX;if(a.span){let t=P+e.localX(a.startKey);d({type:"node",id:`node:${s}`,nodeId:s,rendererRole:oH,shape:"rectangle",x:t,y:o-6,width:Math.max(12,P+e.localX(a.endKey)-t),height:12,label:a.event.label,fillColor:g.wash,strokeColor:g.stroke,...l},n)}else{let e="milestone"===a.event.kind,t=e?18:12;d({type:"node",id:`node:${s}`,nodeId:s,rendererRole:oH,shape:e?"diamond":"ellipse",x:r-t/2,y:u-t/2,width:t,height:t,label:a.event.label,fillColor:g.stroke,strokeColor:g.stroke,...l},c)}let f=u+t.side*t.near;d(p(`stem:${s}`,[{x:r,y:u+t.side*t.stemStart},{x:r,y:f}],{strokeColor:"#b9ad95",strokeWidth:1,roughness:0,...l}),i);let m=P+t.left,v=t.side<0?f-a.height:f;for(let e of a.parts){let t=e9(e.text,e.fontSize,200),s=Math.min(Math.max(r,m+t/2),m+a.width-t/2),i=s===r?"center":s<r?"right":"left";d(h(e.id,e.text,s,v+e.height/2,e.fontSize,e.color,{textAlign:i,...l}),c),v+=e.height+2}}f=u+s.below+28*(l<e.lanes.length-1)}),g){let a=P+e.todayX;d(p(`today:${t}`,[{x:a,y:l+u+3},{x:a,y:f}],{strokeColor:oI,strokeWidth:1,strokeStyle:"dashed",roughness:0}),i),d(h(`today-label:${t}`,H,a,l+u/2,13,oI),c)}f+=48}),f-=48,V&&d(h("header",V,e9(V,14,400)/2,g/2,14,oF,{maxWidth:400,textAlign:"left"}),c),{elements:l,zOrder:[...i,...n,...c],height:f}),y=(e=>{let t=1/0,a=-1/0,s=1/0,l=-1/0,i=(e,i,o,r)=>{t=Math.min(t,e),a=Math.max(a,o),s=Math.min(s,i),l=Math.max(l,r)};for(let t of e)if("line"===t.type||"arrow"===t.type)for(let e of t.points)i(e.x,e.y,e.x,e.y);else if("text"===t.type){let e=e9(t.text,t.fontSize,t.maxWidth??200),a=t.text.split("\n").length*t.fontSize*1.35;i(t.x-e/2,t.y-a/2,t.x+e/2,t.y+a/2)}else("node"===t.type||"frame"===t.type)&&i(t.x,t.y,t.x+t.width,t.y+t.height);return{minX:t,maxX:a,minY:s,maxY:l}})(v.elements),w=Math.abs(Math.log((y.maxX-y.minX+80)/(y.maxY-y.minY+80)/2))+.3*(t-1);return{count:t,composed:v,box:y,score:w}},F=e=>e.reduce((e,t)=>!e||t.score<e.score-1e-9?t:e,void 0),I=({box:e})=>(e.maxX-e.minX+40)/(e.maxY-e.minY+40),E=({x:e,breaks:t,reachBefore:a})=>z.map((t,s)=>({gap:t,key:s,free:e[s+1]-a[s]})).filter(({gap:e,key:a,free:s})=>e>0&&!t.has(a)&&!C(a)&&s>=2*M).toSorted((e,t)=>t.free-e.free||e.key-t.key)[0],O=Math.max(1,Math.min(12,Math.ceil(x.length/2))),U=S(A(new Set)),X=[];for(let e=1;e<=O;e+=1){let t=q(U,e);if(!t)break;X.push(t)}let Y=F(X);if(n&&1===Y.count&&I(Y)>3.5){let e=new Set,t=U,a=Y;for(let s=E(t);s&&I(a)>3.5;s=E(t))e.add(s.key),a=q(t=S(A(e)),1);Y=3.5>=I(a)?a:F(X.slice(1))??a}let{composed:T,box:Z}=Y,G=40-Z.minX,D=40-Z.minY,R=T.elements.map(e=>{if("line"===e.type||"arrow"===e.type){let[t,...a]=e.points.map(e=>({x:e.x+G,y:e.y+D}));return"line"===e.type?{...e,points:[t,a[0],...a.slice(1)]}:{...e,points:[t,...a]}}return{...e,x:e.x+G,y:e.y+D}});return{kind:"canvas",version:1,diagramId:s.id,title:s.title,width:Math.ceil(Z.maxX-Z.minX+80),height:Math.ceil(Z.maxY-Z.minY+80),accentColor:s.style.accentColor,backgroundColor:s.style.backgroundColor,elements:R,layers:[],layouts:[],zOrder:T.zOrder}})(cL(p)),catch:e=>new cG({status:"render_failed",context:{...f,issues:[cJ({code:"render_failed",stage:"render",ref:{kind:"diagram",id:p.id},message:e instanceof Error?e.message:"Unable to render timeline scene.",hint:"Repair the event dates and ordering and retry."})]}})}).pipe(o.fRP("codeMode.buildTimeline.render")),w=ty(m);if(w.length>0)return yield*new cG({status:"render_failed",context:{...f,issues:da(w).map(e=>({...e,hint:"Split the chronology into smaller timelines and retry buildTimeline."}))}});let x={...f,partial:dC(m)},b=yield*dL({scene:m,formats:c8(c.options),inlineFormats:c9(c.options),...c.requestId?{requestId:c.requestId}:{},validationIssues:dt}).pipe(o.xm_(e=>new cG({status:e.status,context:{..."export_failed"===e.status?x:f,issues:e.issues}})));return{ok:!0,status:"accepted",buildId:d,...dM(c.requestId),normalizedSpec:p,quality:u,artifact:b,issues:[]}}),dV=o.fn("codeMode.buildChart.workflow")(function*(e){var t,a;let s,i,r,n,c,d=l.q$Z(sM,{errors:"all",reportInput:!0})(e);if(!n2.oJ(d))return yield*new cD({status:"invalid_input",context:{issues:c5(ae(d.failure))}});let p=yield*cC,h=d.success,g=yield*o.OH5(()=>p.createId("build")),u=(s=t4((t=h.spec).title),r=(i=e=>{let t=c6(e);return void 0===t?void 0:t})(t.unit),n=i(t.categoryAxisTitle),c=i(t.valueAxisTitle),{id:c6(t.id)??(c4(s)||"sketchi-chart"),title:s,kind:t.kind,categories:t.categories.map(t4),series:t.series.map(e=>{let t=i(e.name);return{...t?{name:t}:{},values:[...e.values]}}),...r?{unit:r}:{},...n?{categoryAxisTitle:n}:{},...c?{valueAxisTitle:c}:{},...void 0!==t.stacked?{stacked:t.stacked}:{},...void 0!==t.donut?{donut:t.donut}:{},...t.orientation?{orientation:t.orientation}:{},style:{...y}}),f={buildId:g,...dM(h.requestId),normalizedSpec:u},m=T(cB(u)).map(e=>cJ({code:e.code,stage:"input",ref:{kind:"request",path:`spec.${e.path}`},message:e.message,hint:e.hint}));if(m.length>0)return yield*new cD({status:"invalid_chart",context:{...f,issues:m}});let v={accepted:10>=(a=h.options?.minQualityScore??8),score:10,threshold:a,summary:{nodeCount:u.categories.length*u.series.length,edgeCount:0},checks:[]},w={...f,quality:v};if(!v.accepted)return yield*new cD({status:"quality_failed",context:{...w,issues:c7(v)}});let x=yield*o.SvU({try:()=>(function(e){let t=G(e),a=new ow(t.style.backgroundColor);if("pie"===t.kind)!function(e,t){let a=t.series[0].values,s=i5(t.unit),l=oy(a.length,!0),{labels:i,shares:o}=function(e){let t=e.reduce((e,t)=>e+t,0),a=e.map(e=>t>0?e/t*100:0),s=e=>a.map(t=>Math.round(t*10**e)/10**e),l=t=>e.some((a,s)=>a>0&&0===t[s]||e.some((e,l)=>l>s&&e!==a&&t[l]===t[s])),i=+!!a.some(e=>e>0&&e<10);for(;i<2&&l(s(i));)i+=1;let o=s(i);return{shares:a,decimals:i,labels:o.map((t,a)=>0===t&&e[a]>0?`<${(10**-i).toFixed(i)}%`:`${Number(t.toFixed(i))}%`)}}(a),r=t.unit?.trim()==="%",n=87*!!t.donut,c=-Math.PI/2,d=a.map((e,t)=>{let a=o[t]/100*2*Math.PI,s={index:t,start:c,end:c+a,mid:c+a/2};return c+=a,s}),p=[];for(let o of d){let c=l[o.index],d=t.categories[o.index],h=ot(a[o.index],s),g=i[o.index],u={groupIds:[`chart:slice:${o.index}`]},f=o.end-o.start;if(f>.0035){let t=f>=2*Math.PI-1e-9,a=oB(150,o.start,t?o.end-1e-4:o.end),s=n>0?[...a,...oB(n,t?o.end-1e-4:o.end,o.start)]:t?a:[{x:0,y:0},...a];e.polygon(`chart:slice:${o.index}`,s,`${d}: ${g} (${h})`,{fillColor:c,strokeColor:e.surface,strokeWidth:2,...u})}let m=r&&g===h?g:`${g} \xb7 ${h}`,v=od(`${ta(d,110,14)}
|
|
249
249
|
${m}`,14),y=n>0?(n+150)/2:90,w=y*Math.cos(o.mid),x=y*Math.sin(o.mid),b={left:w-v.width/2,top:x-v.height/2,right:w+v.width/2,bottom:x+v.height/2};if(f>.0035&&function(e,t,a){let s=t.end-t.start;return[{x:e.left,y:e.top},{x:e.right,y:e.top},{x:e.right,y:e.bottom},{x:e.left,y:e.bottom}].every(e=>{let l=Math.hypot(e.x,e.y);if(l>144||l<a+6)return!1;if(s>=2*Math.PI-1e-9)return!0;let i=Math.atan2(e.y,e.x)-t.start;return(i=(i%(2*Math.PI)+2*Math.PI)%(2*Math.PI))<=s&&oA(e,t.start,150)>=6&&oA(e,t.end,150)>=6})}(b,o,n)){e.text(`chart:slice-label:${o.index}`,v,b.left,b.top,14,ov(c),"center",u);continue}let k=od(`${ta(d,160,14)}
|
|
250
|
-
${m}`,14),M=Math.cos(o.mid)>=-1e-9?1:-1;p.push({slice:o,text:k,side:M,preferred:166*Math.sin(o.mid)})}let h=e=>p.filter(t=>t.side===e).length,g=e=>Math.abs(Math.cos(e.slice.mid));for(let e of p.filter(e=>g(e)<Math.sin(oc)).toSorted((e,t)=>g(e)-g(t)))h(e.side)-1>h(1===e.side?-1:1)&&(e.side=1===e.side?-1:1);let u=e=>Math.atan2(Math.abs(Math.sin(e.slice.mid)),e.side*Math.cos(e.slice.mid));for(let t of[1,-1]){let a=p.filter(e=>e.side===t),s=a.filter(e=>e.preferred<0).toSorted((e,t)=>u(e)-u(t)),l=a.filter(e=>e.preferred>=0).toSorted((e,t)=>u(e)-u(t)),i=new Map,o=1/0;for(let e of s){let t=Math.min(e.preferred-e.text.height/2,o-6-e.text.height);i.set(e,t),o=t}let r=s.length?Math.max(...s.map(e=>i.get(e)+e.text.height))+6:-1/0;for(let e of l){let t=Math.max(e.preferred-e.text.height/2,r);i.set(e,t),r=t+e.text.height+6}[...s,...l].forEach(a=>{let s=i.get(a),l=s+a.text.height/2,o=180*t,r=t>0?o:o-a.text.width,n={groupIds:[`chart:slice:${a.slice.index}`]},c={x:152*Math.cos(a.slice.mid),y:152*Math.sin(a.slice.mid)},d={x:164*Math.cos(a.slice.mid),y:164*Math.sin(a.slice.mid)};e.line(`chart:leader:${a.slice.index}:a`,c,d,{strokeColor:oi,...n},"middle"),e.line(`chart:leader:${a.slice.index}:b`,d,{x:o-4*t,y:l},{strokeColor:oi,...n},"middle"),e.text(`chart:slice-label:${a.slice.index}`,a.text,r,s,14,ol,t>0?"left":"right",n)})}}(a,t),ox(a,t,{colors:[]});else if("line"===t.kind)!function(e,t){let a,s=t.categories.length,l=i5(t.unit),i=oy(t.series.length,!1),o=oz(t.categories,Math.max(Math.min(720/s,120),36,320/s),2,400),r=t.series.flatMap(e=>e.values),n=1===t.series.length&&s<=16?t.series[0].values.map(e=>od(ot(e,l),12)):void 0,c=(e,a,l)=>{if(!n)return;let i=t.series[0].values,r=i.map((t,a)=>({x:o*(a+.5),y:e(t)})),c=t.series.flatMap(t=>t.values.slice(1).map((a,s)=>({from:{x:o*(s+.5),y:e(t.values[s])},to:{x:o*(s+1+.5),y:e(a)}})));p.min<0&&p.max>0&&c.push({from:{x:0,y:e(0)},to:{x:o*s,y:e(0)}});let d=r.map(e=>({left:e.x-7,top:e.y-7,right:e.x+7,bottom:e.y+7})),h=[];for(let[e,t]of r.entries()){let r=n[e],p=i[e-1],g=i[e+1],u=i[e],f=(void 0===p||p<=u)&&(void 0===g||g>=u),m=(void 0===p||p>=u)&&(void 0===g||g<=u),v=(void 0===p||p<=u)&&(void 0===g||g<=u),y=r.width,w=r.height,x=(e,a)=>({left:t.x+e-y/2,top:t.y+a-w/2,right:t.x+e+y/2,bottom:t.y+a+w/2}),b=x(0,-(10+w/2)),k=x(0,10+w/2),M=x(0,-(22+w/2)),C=x(0,22+w/2),z=x(-(y/2+10),-(4+w/2)),_=x(y/2+10,-(4+w/2)),L=x(-(y/2+10),4+w/2),B=x(y/2+10,4+w/2),A=(v?[b,z,_,M,k,C]:f&&!m?[z,B,b,k,M,C]:m&&!f?[_,L,b,k,M,C]:[k,L,B,C,b,M]).find(e=>e.top>=a&&e.bottom<=l&&e.left>=0&&e.right<=o*s&&!c.some(t=>(function(e,t){let{from:a,to:s}=e,l=e=>e.x>t.left&&e.x<t.right&&e.y>t.top&&e.y<t.bottom;if(l(a)||l(s))return!0;let i=[{x:t.left,y:t.top},{x:t.right,y:t.top},{x:t.right,y:t.bottom},{x:t.left,y:t.bottom}];return i.some((e,t)=>{var l;let o,r,n,c,d;return l=i[(t+1)%4],r=(o=(e,t,a)=>(t.x-e.x)*(a.y-e.y)-(t.y-e.y)*(a.x-e.x))(a,s,e),n=o(a,s,l),c=o(e,l,a),d=o(e,l,s),r*n<0&&c*d<0})})(t,{left:e.left-2,top:e.top-2,right:e.right+2,bottom:e.bottom+2}))&&!d.some(t=>og(t,e,2))&&!h.some(t=>og(t,e,3)));if(!A)return;h.push(A)}return h},d=i0(r,!1),p=iQ(d.low,d.high);for(let e=0;e<3&&n;e+=1){let t=280/(p.max-p.min),s=e=>(p.max-e)*t,l=c(s,-1/0,1/0);if(!l)break;let i=l.some(e=>e.top<0),o=l.some(e=>e.bottom>280);if(!i&&!o){a=l;break}2===e?a=c(s,0,280):p=i1(p,o,i)}let h=a?void 0:t.series.map(e=>e.values.map(e=>od(ot(e,l),12)));h&&(o=Math.max(o,...h.flat().map(e=>e.width+8)));let g=280/(p.max-p.min),u=e=>(p.max-e)*g,f=oM(p,l),m=Math.max(...f.labels.map(e=>e.width)),v=o*s;p.ticks.forEach((t,a)=>{let s=u(t),l=f.labels[a];e.line(`chart:grid:${a}`,{x:0,y:s},{x:v,y:s},{strokeColor:oo}),e.text(`chart:tick:${a}`,l,-8-l.width,s-l.height/2,13,oi,"right")}),p.min<0&&p.max>0&&e.line("chart:baseline",{x:0,y:u(0)},{x:v,y:u(0)},{strokeColor:or,strokeWidth:2},"middle"),e.line("chart:axis",{x:0,y:280},{x:v,y:280},{strokeColor:or},"middle");let y=280;if(t.categories.forEach((t,a)=>{let s=o*(a+.5);e.line(`chart:category-tick:${a}`,{x:s,y:280},{x:s,y:285},{strokeColor:or},"middle");let l=op(t,o-10,14),i=e.text(`chart:category:${a}`,l,s-l.width/2,289,14,ol);y=Math.max(y,i.bottom)}),t.series.forEach((a,s)=>{let r=i[s],n={groupIds:[`chart:series:${s}`]};a.values.slice(1).forEach((t,l)=>e.line(`chart:line:${s}:${l+1}`,{x:o*(l+.5),y:u(a.values[l])},{x:o*(l+1+.5),y:u(t)},{strokeColor:r,strokeWidth:2,...n},"middle")),a.values.forEach((a,i)=>{let c=ot(a,l);ob(e,`chart:point:${i}:${s}`,s,o*(i+.5),u(a),r,`${t.categories[i]} \xb7 ${ok(t,s)}: ${c}`,n)})}),h){let a=y+12,s=t.series.map(e=>e.name?op(e.name,200,12):void 0),l=-10-Math.max(0,...s.map(e=>e?e.width+6:0));h.forEach((r,n)=>{let c=t.series[n],d=i[n],p={groupIds:[`chart:table:${n}`]},h=s[n],g=Math.max(r[0].height,h?.height??0),u=a+g/2;e.line(`chart:table-key:${n}:line`,{x:l-22,y:u},{x:l,y:u},{strokeColor:d,strokeWidth:2,...p},"middle"),ob(e,`chart:table-key:${n}`,n,l-11,u,d,c.name??t.title,p),h&&e.text(`chart:table-name:${n}`,h,l+6,a+(g-h.height)/2,12,ol,"left",p),r.forEach((t,s)=>e.text(`chart:table:${s}:${n}`,t,o*(s+.5)-t.width/2,a+(g-t.height)/2,12,oi,"center",p)),a+=g+4}),y=a-4}if(a?.forEach((t,a)=>e.text(`chart:value:${a}:0`,n[a],t.left,t.top,12,oi,"center",{groupIds:["chart:series:0"]})),t.valueAxisTitle){let a=op(t.valueAxisTitle,Math.max(v+m,200),14),s=f.labels[f.labels.length-1];e.text("chart:value-axis-title",a,-8-m,-s.height/2-8-a.height,14,oi,"left")}if(t.categoryAxisTitle){let a=op(t.categoryAxisTitle,Math.max(v,200),14);e.text("chart:category-axis-title",a,(v-a.width)/2,y+12,14,oi)}}(a,t),ox(a,t,{legend:"line",colors:oy(t.series.length,!1)});else{let e=oC(t);"horizontal"===function(e){if(e.orientation)return e.orientation;let t=o_(oC(e)),a=oz(e.categories,t.band,2,161);return a>160||a*e.categories.length>960?"horizontal":"vertical"}(t)?function(e,t){let{diagram:a,stacked:s,colors:l}=t,i=s?1:a.series.length,o=od("0",12).height,r=1===i?24:Math.max(o-2,Math.round(44/i)),n=i*r+(i-1)*2,c=Math.min(220,Math.max(...a.categories.map(e=>od(e,14).width))),d=a.categories.map(e=>op(e,c,14)),p=s?t.totals.flatMap(e=>[e.up,e.down].filter(e=>void 0!==e)):t.labels.flat(),h=e=>(t,a)=>p.some(s=>"up"===e==s.value>=0&&("up"===e?(t.max-s.value)*a:(s.value-t.min)*a)<s.text.width+4+4),g=oL(t.domain,480,h("up"),h("down"));for(let e=4;e>=2;e-=1){let a=oM(g,t.parts);if(480/(g.max-g.min)*g.step>=Math.max(...a.labels.map(e=>e.width))+12)break;g=oL(t.domain,480,h("up"),h("down"),e)}let u=e=>{let s=480/(e.max-e.min),l=t=>(t-e.min)*s;return a.categories.map((e,s)=>{let i=0,o=0;return a.series.map((e,a)=>{let{value:n,text:c}=t.labels[s][a],d=n>=0?i:o,p=d+n;n>=0?i=p:o=p;let h=l(Math.min(d,p)),g=l(Math.max(d,p));g-h<.5&&(n>=0?g=h+.5:h=g-.5);let u=g-h>=c.width+6&&r>=c.height+1;return{s:a,value:n,text:c,left:h,right:g,inside:u}})})};for(let e=0;s&&e<6;e+=1){let e=-g.min/(g.max-g.min)*480,t=Math.max(0,...u(g).map(e=>e.filter(e=>!e.inside&&e.value<0).reduce((e,t)=>e+t.text.width+6,0)));if(0===t||t<=e-2)break;g=i1(g,!0,!1)}let f=480/(g.max-g.min),m=e=>(e-g.min)*f,v=u(g),y=s&&v.flat().some(e=>!e.inside)?o+10:0,w=Math.max(n+14,...d.map(e=>e.height+8))+y,x=oM(g,t.parts),b=w*a.categories.length;g.ticks.forEach((t,a)=>{let s=m(t),l=x.labels[a];e.line(`chart:grid:${a}`,{x:s,y:0},{x:s,y:b},{strokeColor:oo}),e.text(`chart:tick:${a}`,l,s-l.width/2,b+6,13,oi)});let k=m(0);e.line("chart:baseline",{x:k,y:0},{x:k,y:b},{strokeColor:or,strokeWidth:2},"middle"),a.categories.forEach((i,o)=>{let c=w*o+(w-y)/2,p=d[o];e.text(`chart:category:${o}`,p,-10-p.width,c-p.height/2,14,ol,"right");let h=c-n/2;if(a.series.forEach((n,c)=>{let d,p,{value:g,text:u}=t.labels[o][c],f=l[c],y=`chart:bar:${o}:${c}`,w={groupIds:[s?`chart:stack:${o}`:y]},x=s?h:h+c*(r+2);s?{left:d,right:p}=v[o][c]:(d=m(Math.min(0,g)),(p=m(Math.max(0,g)))-d<.5&&(g>=0?p=d+.5:d=p-.5));let b=`${i} \xb7 ${ok(a,c)}: ${u.text}`;if(0!==g&&e.mark(y,"rectangle",{x:d,y:x,width:p-d,height:r},b,s?{fillColor:f,strokeColor:e.surface,strokeWidth:2,...w}:{fillColor:f,strokeColor:f,...w}),s){v[o][c].inside&&e.text(`chart:value:${o}:${c}`,u,(d+p-u.width)/2,x+(r-u.height)/2,12,ov(f),"center",w);return}let k=g>=0?p+4:d-4-u.width;e.text(`chart:value:${o}:${c}`,u,k,x+(r-u.height)/2,12,oi,g>=0?"left":"right",w)}),s){let a=t.totals[o],s={groupIds:[`chart:stack:${o}`]};a.up&&e.text(`chart:total:${o}`,a.up.text,m(a.up.value)+4,c-a.up.text.height/2,12,ol,"left",s),a.down&&e.text(`chart:total-negative:${o}`,a.down.text,m(a.down.value)-4-a.down.text.width,c-a.down.text.height/2,12,ol,"right",s);let l=v[o].filter(e=>!e.inside),i=h+n,r=i+7,d=new Map;for(let e of[!0,!1]){let t=l.filter(t=>t.value>=0===e);ou(t.map(e=>({preferred:(e.left+e.right)/2,size:e.text.width})),e?k+2:0,e?1/0:k-2,6).forEach((e,a)=>d.set(t[a],e))}l.forEach(t=>{let a=d.get(t),l=(t.left+t.right)/2,n={strokeColor:oi,...s};e.line(`chart:leader:${o}:${t.s}:a`,{x:l,y:i+1},{x:l,y:i+3},n,"middle"),e.line(`chart:leader:${o}:${t.s}:b`,{x:l,y:i+3},{x:a+t.text.width/2,y:r-1},n,"middle"),e.text(`chart:value:${o}:${t.s}`,t.text,a,r,12,oi,"center",s)})}});let M=x.labels[0].height;if(a.valueAxisTitle){let t=op(a.valueAxisTitle,480,14);e.text("chart:value-axis-title",t,(480-t.width)/2,b+6+M+10,14,oi)}if(a.categoryAxisTitle){let t=op(a.categoryAxisTitle,Math.max(c,160),14);e.text("chart:category-axis-title",t,-10-t.width,-8-t.height,14,oi,"right")}}(a,e):function(e,t){let{diagram:a,stacked:s,colors:l}=t,i=a.categories.length,o=o_(t),r="vertical"===a.orientation,n=od("0",12).height+4+2,c=a.categories.map((e,t)=>t),d=oL(t.domain,300,(e,a)=>c.some(l=>(s?void 0!==t.totals[l].up:t.labels[l].some(e=>e.value>=0))&&(e.max-(s?t.totals[l].up?.value??0:Math.max(0,...t.labels[l].map(e=>e.value))))*a<n),(e,a)=>c.some(l=>(s?void 0!==t.totals[l].down:t.labels[l].some(e=>e.value<0))&&((s?t.totals[l].down?.value??0:Math.min(0,...t.labels[l].map(e=>e.value)))-e.min)*a<n)),p=e=>{let s=300/(e.max-e.min),l=t=>(e.max-t)*s;return a.categories.map((e,s)=>{let i=0,r=0;return a.series.map((e,a)=>{let{value:n,text:c}=t.labels[s][a],d=n>=0?i:r,p=d+n;n>=0?i=p:r=p;let h=l(Math.max(d,p)),g=l(Math.min(d,p));g-h<.5&&(n>=0?h=g-.5:g=h+.5);let u=g-h>=c.height+1&&c.width+6<=o.thickness;return{s:a,value:n,text:c,top:h,bottom:g,inside:u}})})};for(let e=0;s&&e<6;e+=1){let e=p(d),t=d.max/(d.max-d.min)*300,a=t=>Math.max(0,...e.map(e=>e.filter(e=>!e.inside&&e.value>=0===t).reduce((e,t)=>e+t.text.height+2,0))),s=a(!0)>0&&a(!0)>t-2,l=a(!1)>0&&a(!1)>300-t-2;if(!s&&!l)break;d=i1(d,l,s)}let h=300/(d.max-d.min),g=e=>(d.max-e)*h,u=p(d),f=e=>Math.max(o.thickness,t.totals[e].up?.text.width??0,t.totals[e].down?.text.width??0)/2,m=s?Math.max(0,...u.flat().flatMap(e=>e.inside?[]:[e.text.width])):0,v=Math.max(oz(a.categories,o.band,r?3:2,r?200:161),320/i,m>0?2*Math.max(...c.map(f))+10+m+6:0),y=oM(d,t.parts),w=Math.max(...y.labels.map(e=>e.width)),x=v*i;d.ticks.forEach((t,a)=>{let s=g(t),l=y.labels[a];e.line(`chart:grid:${a}`,{x:0,y:s},{x:x,y:s},{strokeColor:oo}),e.text(`chart:tick:${a}`,l,-8-l.width,s-l.height/2,13,oi,"right")});let b=g(0);e.line("chart:baseline",{x:0,y:b},{x:x,y:b},{strokeColor:or,strokeWidth:2},"middle");let k=o.bars*o.thickness+(o.bars-1)*2,M=300;if(a.categories.forEach((i,r)=>{let n=0+v*(r+.5),c=n-k/2,d=op(i,v-10,14),p=e.text(`chart:category:${r}`,d,n-d.width/2,308,14,ol);if(M=Math.max(M,p.bottom),a.series.forEach((n,d)=>{let p,h,{value:f,text:m}=t.labels[r][d],v=l[d],y=`chart:bar:${r}:${d}`,w={groupIds:[s?`chart:stack:${r}`:y]},x=s?c:c+d*(o.thickness+2);s?{top:p,bottom:h}=u[r][d]:(p=g(Math.max(0,f)),(h=g(Math.min(0,f)))-p<.5&&(f>=0?p=h-.5:h=p+.5));let b=`${i} \xb7 ${ok(a,d)}: ${m.text}`;if(0!==f&&e.mark(y,"rectangle",{x:x,y:p,width:o.thickness,height:h-p},b,s?{fillColor:v,strokeColor:e.surface,strokeWidth:2,...w}:{fillColor:v,strokeColor:v,...w}),s){u[r][d].inside&&e.text(`chart:value:${r}:${d}`,m,x+(o.thickness-m.width)/2,(p+h-m.height)/2,12,ov(v),"center",w);return}let k=f>=0?p-4-m.height:h+4;e.text(`chart:value:${r}:${d}`,m,x+(o.thickness-m.width)/2,k,12,oi,"center",w)}),s){let t=u[r].filter(e=>!e.inside),a=n+f(r)+10,s=new Map;for(let e of[!0,!1]){let a=t.filter(t=>t.value>=0===e);ou(a.map(e=>({preferred:(e.top+e.bottom)/2,size:e.text.height})),e?0:b+2,e?b-2:300,2).forEach((e,t)=>s.set(a[t],e))}let l={groupIds:[`chart:stack:${r}`]};t.forEach(t=>{let i=s.get(t),n=(t.top+t.bottom)/2,d={strokeColor:oi,...l};e.line(`chart:leader:${r}:${t.s}:a`,{x:c+o.thickness+1,y:n},{x:a-4,y:n},d,"middle"),e.line(`chart:leader:${r}:${t.s}:b`,{x:a-4,y:n},{x:a-1,y:i+t.text.height/2},d,"middle"),e.text(`chart:value:${r}:${t.s}`,t.text,a,i,12,oi,"left",l)})}if(s){let a=t.totals[r],s={groupIds:[`chart:stack:${r}`]};a.up&&e.text(`chart:total:${r}`,a.up.text,n-a.up.text.width/2,g(a.up.value)-4-a.up.text.height,12,ol,"center",s),a.down&&e.text(`chart:total-negative:${r}`,a.down.text,n-a.down.text.width/2,g(a.down.value)+4,12,ol,"center",s)}}),a.valueAxisTitle){let t=op(a.valueAxisTitle,Math.max(x+w,200),14),s=y.labels[y.labels.length-1];e.text("chart:value-axis-title",t,-8-w,-s.height/2-8-t.height,14,oi,"left")}if(a.categoryAxisTitle){let t=op(a.categoryAxisTitle,Math.max(x,200),14);e.text("chart:category-axis-title",t,(0+x-t.width)/2,M+12,14,oi)}}(a,e),ox(a,t,{legend:"bar",colors:e.colors})}a.breakRulesUnderText(e=>e.startsWith("chart:grid:")||e.startsWith("chart:category-tick:")||"chart:baseline"===e||"chart:axis"===e);let s=a.bounds(),l=40-s.left,i=40-s.top,o=a.elements.map(e=>{if("line"===e.type){let[t,a,...s]=e.points.map(e=>({x:oh(e.x+l),y:oh(e.y+i)}));return{...e,points:[t,a,...s]}}return"arrow"===e.type?e:{...e,x:oh(e.x+l),y:oh(e.y+i)}});return{kind:"canvas",version:1,diagramId:t.id,title:t.title,width:Math.ceil(s.right-s.left+80),height:Math.ceil(s.bottom-s.top+80),accentColor:t.style.accentColor,backgroundColor:t.style.backgroundColor,elements:o,layers:[],layouts:[],zOrder:a.zOrder()}})(cB(u)),catch:e=>new cD({status:"render_failed",context:{...w,issues:[cJ({code:"render_failed",stage:"render",ref:{kind:"diagram",id:u.id},message:e instanceof Error?e.message:"Unable to render chart scene.",hint:"Repair the categories and series values and retry."})]}})}).pipe(o.fRP("codeMode.buildChart.render")),b=ty(x);if(b.length>0)return yield*new cD({status:"render_failed",context:{...w,issues:da(b).map(e=>({...e,hint:"Use fewer categories or series and retry buildChart."}))}});let k={...w,partial:dC(x)},M=yield*dL({scene:x,formats:c8(h.options),inlineFormats:c9(h.options),...h.requestId?{requestId:h.requestId}:{},validationIssues:dt}).pipe(o.xm_(e=>new cD({status:e.status,context:{..."export_failed"===e.status?k:w,issues:e.issues}})));return{ok:!0,status:"accepted",buildId:g,...dM(h.requestId),normalizedSpec:u,quality:v,artifact:M,issues:[]}}),dH=l._kM({spec:l.$r1,requestId:l.Qrq(l.$r1)}),dq=l._kM({source:l._kM({scene:l.$r1})}),dF=o.fn("codeMode.canvas.serializedLimit")((e,t)=>o.SvU(()=>io(e)).pipe(o.YWq({onFailure:()=>cJ({code:"invalid_type",stage:"input",ref:{kind:"request",path:t},message:"CanvasSpec could not be serialized as JSON.",hint:"Remove non-JSON values or reduce deeply nested fields and retry."}),onSuccess:e=>e<=ts.maxSerializedBytes?void 0:cJ({code:"canvas_limit_exceeded",stage:"canvas",ref:{kind:"request",path:t},message:`CanvasSpec exceeds ${ts.maxSerializedBytes} serialized bytes.`,hint:"Split the visualization into a smaller canvas or reduce repeated text and points."})}))),dI=o.fn("codeMode.createCanvas.workflow")(function*(e){let t=yield*cC,a=yield*o.OH5(()=>t.createId("build")),s=l.q$Z(dH)(e),i=n2.oJ(s)?{spec:s.success.spec,requestId:l.is(l.QfV)(s.success.requestId)?s.success.requestId:void 0}:void 0;if(i){let e=yield*dF(i.spec,"spec");if(e)return yield*new cR({status:"canvas_limit_exceeded"===e.code?"limit_exceeded":"invalid_input",context:{buildId:a,...dM(i.requestId),issues:[e]}})}let r=l.q$Z(s7,{errors:"all",reportInput:!0})(e);if(!n2.oJ(r))return yield*new cR({status:"invalid_input",context:{issues:c5(ae(r.failure))}});let n=r.success,c={buildId:a,...dM(n.requestId)},d=dl(n.spec);if(!d)return yield*new cR({status:"invalid_canvas",context:{...c,issues:[cJ({code:"invalid_canvas_geometry",stage:"canvas",ref:{kind:"request",path:"spec.elements"},message:"CanvasSpec contains an invalid point list.",hint:"Provide at least two points for lines/connectors and three points for polygons."})]}});let p=ty(d).filter(e=>"limit_exceeded"===e.code);if(p.length>0)return yield*new cR({status:"limit_exceeded",context:{...c,issues:da(p)}});let h=yield*cd(function(e){let t=[...e.elements];for(let a of e.layouts)t=function(e,t){switch(t.type){case"row":case"column":case"stack":return function(e,t){let a=tx(e,t.ids),s=a[0];if(!s)return[...e];let l=tw(s),i=t.x??l.x,o=t.y??l.y,r="stack"===t.type?t.gap??0:t.gap??32,n=new Map,c="column"===t.type?o:i;for(let e of a){let a=tw(e);n.set(e.id,{x:"column"===t.type||"stack"===t.type?i:c,y:"column"===t.type?c:o}),"stack"!==t.type&&(c+=("column"===t.type?a.height:a.width)+r)}return tb(e,n)}(e,t);case"grid":return function(e,t){let a=tx(e,t.ids);if(0===a.length)return[...e];let s=Math.max(1,Math.floor(t.columns)),l=a.map(tw),i=Array.from({length:s},(e,t)=>Math.max(0,...l.filter((e,a)=>a%s===t).map(e=>e.width))),o=Array.from({length:Math.ceil(a.length/s)},(e,t)=>Math.max(0,...l.filter((e,a)=>Math.floor(a/s)===t).map(e=>e.height))),r=l[0];if(!r)return[...e];let n=t.x??r.x,c=t.y??r.y,d=t.columnGap??32,p=t.rowGap??32,h=new Map;return a.forEach((e,t)=>{let a=t%s,l=Math.floor(t/s);h.set(e.id,{x:n+i.slice(0,a).reduce((e,t)=>e+t,0)+d*a,y:c+o.slice(0,l).reduce((e,t)=>e+t,0)+p*l})}),tb(e,h)}(e,t);case"align":return function(e,t){let a=tx(e,t.ids);if(0===a.length)return[...e];let s=a.map(tw),l=s.map(e=>tk(e,t.axis)),i=s.map(e=>tk(e,t.axis)+tM(e,t.axis)),o=s.map(e=>tk(e,t.axis)+tM(e,t.axis)/2),r="start"===t.alignment?Math.min(...l):"end"===t.alignment?Math.max(...i):o.reduce((e,t)=>e+t,0)/o.length,n=new Map;return a.forEach((e,a)=>{let l=s[a];if(!l)return;let i="start"===t.alignment?r:"end"===t.alignment?r-tM(l,t.axis):r-tM(l,t.axis)/2;n.set(e.id,{x:"x"===t.axis?i:l.x,y:"y"===t.axis?i:l.y})}),tb(e,n)}(e,t);case"distribute":return function(e,t){let a=tx(e,t.ids).sort((e,a)=>tk(tw(e),t.axis)-tk(tw(a),t.axis));if(a.length<2)return[...e];let s=a.map(tw),l=s[0],i=s[s.length-1];if(!l||!i)return[...e];let o=tk(l,t.axis),r=tk(i,t.axis)+tM(i,t.axis),n=s.reduce((e,a)=>e+tM(a,t.axis),0),c=t.gap??Math.max(0,(r-o-n)/(a.length-1)),d=new Map,p=o;return a.forEach((e,a)=>{let l=s[a];l&&(d.set(e.id,{x:"x"===t.axis?p:l.x,y:"y"===t.axis?p:l.y}),p+=tM(l,t.axis)+c)}),tb(e,d)}(e,t)}}(t,a);let a=function(e){let t=1,a=1;for(let s of e)if(tc(s)){let e=tw(s);t=Math.max(t,e.x+e.width),a=Math.max(a,e.y+e.height)}else if("arrow"===s.type||"line"===s.type)for(let e of s.points)t=Math.max(t,e.x),a=Math.max(a,e.y);return{width:t+48,height:a+48}}(t=function(e){let t=t_(e),a=new Map;for(let t of e)("node"===t.type||"frame"===t.type)&&a.set(t.id,t);let s=e.map(e=>{if("arrow"===e.type){let a=t.get(e.sourceNodeId),s=t.get(e.targetNodeId);return a&&s?{...e,points:[tz(a,tC(s)),...e.points.slice(1,-1),tz(s,tC(a))]}:e}if("line"===e.type){let t=e.startBinding?a.get(e.startBinding.elementId):void 0,s=e.endBinding?a.get(e.endBinding.elementId):void 0;if(!t&&!s)return e;let l=[e.points[0],e.points[1],...e.points.slice(2)];return t&&(l[0]=tz(t,s?tC(s):l[l.length-1]??l[0])),s&&(l[l.length-1]=tz(s,t?tC(t):l[0])),{...e,points:l}}return e}),l=new Map(s.map(e=>[e.id,e]));return s.map(e=>{if("text"!==e.type||!e.containerId)return e;let t=l.get(e.containerId);if(t?.type==="node"){let a=tC(t);return{...e,x:a.x,y:a.y}}if(t?.type==="arrow"){let a=t.points[0],s=t.points[t.points.length-1]??a;return{...e,x:(a.x+s.x)/2,y:(a.y+s.y)/2}}return e})}(t)),s=e.zOrder.length?[...e.zOrder]:t.map((e,t)=>({element:e,index:t})).sort((e,t)=>(e.element.zIndex??e.index)-(t.element.zIndex??t.index)).map(({element:e})=>e.id);return{...e,width:Math.max(e.width,a.width),height:Math.max(e.height,a.height),elements:t,zOrder:s}}(d),t.icons),g=h.scene,u=function(e){let{icons:t,...a}=e;return a}(g),f=ty(g);if(f.length>0){let e=da(f);return yield*new cR({status:e.some(e=>"canvas_limit_exceeded"===e.code)?"limit_exceeded":"invalid_canvas",context:{...c,normalizedSpec:u,issues:[...h.issues,...e]}})}let m={...c,normalizedSpec:u,partial:dC(g)},v=yield*dL({scene:g,formats:c8(n.options),inlineFormats:c9(n.options),...n.requestId?{requestId:n.requestId}:{},validationIssues:ds}).pipe(o.xm_(e=>new cR({status:e.status,context:{...m,issues:e.issues}})));return{ok:!0,status:"accepted",buildId:a,...dM(n.requestId),normalizedSpec:u,artifact:v,issues:h.issues}}),dE=o.fn("codeMode.buildFlowchart.workflow")(function*(e){var t,a;let s,i=l.q$Z(sx,{errors:"all",reportInput:!0})(function(e){if(!cv(e))return e;let{spec:t}=e;if(!cv(t)||!Array.isArray(t.nodes))return e;let a=t.nodes,s=!1,l=Array.isArray(t.edges)?t.edges:void 0,i=l?.map(e=>{if(!cv(e)||void 0!==e.source&&void 0!==e.target||void 0===e.from&&void 0===e.to)return e;s=!0;let{from:t,to:a,...l}=e;return{...l,source:e.source??t,target:e.target??a}}),o=(i??[]).filter(cv),r=new Map,n=e=>{let t=r.get(e);return t||r.set(e,t={incoming:0,outgoing:0,labeledOutgoing:0}),t};for(let e of o){let t=n(e.source);t.outgoing+=1,"string"==typeof e.label&&""!==e.label.trim()&&(t.labeledOutgoing+=1),n(e.target).incoming+=1}let c=a.filter(cv).filter(e=>0===n(e.id).incoming),d=a.map(e=>{if(!cv(e))return e;let t=(e=>{let t=e.kind??e.type,{incoming:a,outgoing:s,labeledOutgoing:l}=n(e.id);if("string"==typeof t){let l=t.trim().toLowerCase().replace(/[\s_-]+/g,""),i=cf[l];if(i)return i;if(cm.has(l)){if(0===a&&s>0)return"start";if(0===s&&a>0)return"end"}return e.kind}if(void 0!==t)return e.kind;if(0===s&&a>0)return"end";if(0===a&&1===c.length&&0===l)return"start";let i="string"==typeof e.label&&t4(e.label).endsWith("?");if(a>0&&1===s&&0===l&&!i)return"process"})(e);if(t===e.kind)return e;s=!0;let{type:a,...l}=e;return{...l,kind:t}});return s?{...e,spec:{...t,nodes:d,...i?{edges:i}:{}}}:e}(e));if(!n2.oJ(i))return yield*new cX({status:"invalid_input",context:{issues:c5(ae(i.failure),c3)}});let r=yield*cC,n=i.success,c=yield*o.OH5(()=>r.createId("build")),d=(s=t4((a=n.spec).title),{id:cu(a.id)??(s.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,48)||"sketchi-flowchart"),title:s,nodes:a.nodes.map(e=>({id:t4(e.id),label:t4(e.label),kind:e.kind,...e.description?{description:t4(e.description)}:{},...e.icon?{icon:{slug:t4(e.icon.slug)}}:{},...e.group?{group:t4(e.group)}:{}})),edges:a.edges.map((e,t)=>({id:cu(e.id)??`edge-${t+1}`,source:t4(e.source),target:t4(e.target),...e.label?{label:t4(e.label)}:{}})),...a.groups?{groups:a.groups.map(e=>({id:t4(e.id),label:t4(e.label)}))}:{},layout:{direction:a.layout.direction},style:{...y}}),p=cc(d.nodes,r.icons),h={...d,nodes:p.nodes},g={buildId:c,...dM(n.requestId),normalizedSpec:h},u=l.q$Z(eh,{errors:"all",reportInput:!0})({id:h.id,title:h.title,type:"flowchart",nodes:h.nodes.map(e=>({...e,metadata:{}})),edges:h.edges.map(e=>({...e,metadata:{}})),...h.groups?{groups:h.groups.map(e=>({...e}))}:{},layout:{direction:h.layout.direction,edgeRouting:"orthogonal"},style:h.style,metadata:{}});if(!n2.oJ(u))return yield*new cX({status:"invalid_flowchart",context:{...g,issues:(t=ae(u.failure),t.issues.slice(0,20).map(e=>{let t=function(e,t){let a=cK(e.path),s="input"===a?"spec":`spec.${a}`,[l,i]=e.path;if("nodes"===l&&"number"==typeof i){let e=t.nodes[i]?.id;return{kind:"node",...e?{id:e}:{},path:s}}if("edges"===l&&"number"==typeof i){let e=t.edges[i]?.id;return{kind:"edge",...e?{id:e}:{},path:s}}if("groups"===l&&"number"==typeof i){let e=t.groups?.[i]?.id;return{kind:"group",...e?{id:e}:{},path:s}}return{kind:"diagram",id:t.id,path:s}}(e,h);return cJ({code:cQ(e),stage:"flowchart",ref:t,message:e.message,hint:`Fix ${t.path??"spec"} so normalization produces a valid canonical flowchart value.`})}))}});let f=u.success,m=ef(f).map(e=>{let t=function(e){if(e)return{kind:e.kind,...e.id?{id:e.id}:{},...e.path?{path:`spec.${e.path}`}:{}}}(e.ref);return cJ({code:e.code,stage:"flowchart",...t?{ref:t}:{},message:e.message,hint:e.hint})});if(m.length>0)return yield*new cX({status:"invalid_flowchart",context:{...g,issues:m}});ev(f);let v=function(e,t){let a=[],s=0,l=(e,t,l,i=!1)=>{s+=e,a.push({...l,passed:!1,severity:i?"error":"warning",message:t})},i=new Map,o=new Map;for(let t of e.edges)i.set(t.source,(i.get(t.source)??0)+1),i.set(t.target,(i.get(t.target)??0)+1),o.set(t.source,[...o.get(t.source)??[],t]);if(e.nodes.length>1&&0===e.edges.length)l(5,"no edges at all — every node floats unconnected",{code:"disconnected_graph",refs:cg(e.nodes)},!0);else{let t=e.nodes.filter(e=>(i.get(e.id)??0)===0);t.length>0&&e.nodes.length>1&&l(Math.min(1.5*t.length,4.5),`unconnected node(s): ${t.map(e=>e.id).join(", ")}`,{code:"disconnected_graph",refs:cg(t)},!0);let a=function(e){let t=new Map;for(let a of e.nodes)t.set(a.id,[]);for(let a of e.edges)t.get(a.source)?.push(a.target),t.get(a.target)?.push(a.source);let a=new Set,s=0;for(let l of e.nodes){if(a.has(l.id))continue;s+=1;let e=[l.id];for(a.add(l.id);e.length>0;){let s=e.pop();if(void 0===s)break;for(let l of t.get(s)??[])a.has(l)||(a.add(l),e.push(l))}}return s}(e);a>1&&0===t.length&&l(2,`diagram splits into ${a} disconnected islands`,{code:"disconnected_graph",refs:cg(e.nodes)},!0)}e.nodes.length<3?l(2,"too sparse — a useful flow needs at least 3 nodes",{code:"graph_too_sparse",refs:[{kind:"diagram",id:e.id,path:"spec.nodes"}]}):e.nodes.length>24&&l(2,"too dense — trim or merge nodes (24 max)",{code:"graph_too_dense",refs:[{kind:"diagram",id:e.id,path:"spec.nodes"}]});let r=new Map;for(let t of e.nodes){let e=t.label.trim().toLowerCase();r.set(e,(r.get(e)??0)+1)}let n=[...r.entries()].filter(([,e])=>e>1);n.length>0&&l(Math.min(n.length,3),`duplicate label(s): ${n.map(([e])=>`"${e}"`).join(", ")}`,{code:"duplicate_label",refs:cg(e.nodes.filter(e=>(r.get(e.label.trim().toLowerCase())??0)>1))});let c=0,d=0;for(let t of e.nodes){if("decision"!==t.kind){t.label.endsWith("?")&&l(0,`question label on non-decision node "${t.id}"; use kind "decision" only for branch points`,{code:"question_label_not_decision",refs:cg([t])});continue}let e=o.get(t.id)??[];e.length<2?(c+=1,l(0,`decision "${t.id}" needs at least 2 outgoing branches`,{code:"underbranched_decision",refs:cg([t])},!0)):e.some(e=>!e.label)&&(d+=1,l(0,`label every branch out of decision "${t.id}" (yes/no, …)`,{code:"unlabeled_decision_branch",refs:cg([t])}))}s+=Math.min(1.5*c,4.5)+Math.min(d,3);let p=e.nodes.filter(e=>e.label.length>42);p.length>0&&l(Math.min(.5*p.length,2),`shorten label(s): ${p.map(e=>e.id).join(", ")}`,{code:"label_too_long",refs:cg(p)});let h=e.nodes.filter(e=>cp.test(e.label.trim()));h.length>0&&l(Math.min(h.length,3),`generic label(s) say nothing: ${h.map(e=>`"${e.label}"`).join(", ")}`,{code:"generic_label",refs:cg(h)}),(e.title.trim().length<4||ch.test(e.title.trim()))&&l(.5,"give the diagram a specific title",{code:"weak_title",refs:[{kind:"diagram",id:e.id,path:"spec.title"}]});let g=Math.max(0,Math.round((10-s)*10)/10);return{accepted:g>=t&&!a.some(e=>"error"===e.severity),score:g,threshold:t,summary:{nodeCount:e.nodes.length,edgeCount:e.edges.length},checks:a}}(f,n.options?.minQualityScore??8),w={...g,quality:v};if(!v.accepted)return yield*new cX({status:"quality_failed",context:{...w,issues:c7(v)}});let x=yield*o.SvU({try:()=>nb(f),catch:e=>new cX({status:"render_failed",context:{...w,issues:[cJ({code:"render_failed",stage:"render",ref:{kind:"diagram",id:h.id},message:e instanceof Error?e.message:"Unable to render flowchart scene.",hint:"Simplify the graph or retry with a smaller flowchart."})]}})}).pipe(o.fRP("codeMode.buildFlowchart.render")),b=yield*cd(x,r.icons),k=b.scene,M={...w,partial:dC(k)},C=yield*dL({scene:k,formats:c8(n.options),inlineFormats:c9(n.options),...n.requestId?{requestId:n.requestId}:{},validationIssues:dt}).pipe(o.xm_(e=>new cX({status:e.status,context:{..."export_failed"===e.status?M:w,issues:e.issues}})));return{ok:!0,status:"accepted",buildId:c,...dM(n.requestId),normalizedSpec:h,quality:v,artifact:C,issues:[...p.issues,...b.issues]}}),dO=o.fn("codeMode.getArtifact.workflow")(function*(e){let t=l.q$Z(la,{errors:"all",reportInput:!0})(e);if(!n2.oJ(t))return yield*new c$({status:"invalid_input",context:{issues:c5(ae(t.failure))}});let a=yield*cC,s=yield*ia,i=t.success,r=yield*s.readManifest(i.artifactId).pipe(o.xm_(e=>new c$({status:"storage_failed",context:{issues:[d_(e,"storage_read_failed")]}})));if(!r)return yield*new c$({status:"not_found",context:{issues:[cJ({code:"patch_source_unavailable",stage:"storage",ref:{kind:"artifact",id:i.artifactId},message:`Artifact "${i.artifactId}" was not found.`,hint:"Use the artifactId returned by buildFlowchart or applyDiagramPatch."})]}});let n=i.format??"scene";if(!r.formats.some(e=>e.format===n))return yield*new c$({status:"format_unavailable",context:{issues:[cJ({code:"unsupported_artifact_format",stage:"storage",ref:{kind:"artifact",id:i.artifactId},message:`Artifact "${i.artifactId}" does not include format "${n}".`,hint:"Request a format listed in the artifact bundle."})]}});let c=yield*s.read(i.artifactId,n).pipe(o.xm_(e=>new c$({status:"storage_failed",context:{issues:[d_(e,"storage_read_failed")]}})));return c?{ok:!0,artifactId:i.artifactId,diagramId:r.diagramId,format:n,mimeType:c.mimeType,...a.artifactUrl?{url:a.artifactUrl({artifactId:i.artifactId,format:n})}:{},...!0!==i.inline||!il(n)?{}:{inline:c.data},sizeBytes:c.sizeBytes,...r.provenance?{provenance:r.provenance}:{}}:yield*new c$({status:"format_unavailable",context:{issues:[cJ({code:"patch_source_unavailable",stage:"storage",ref:{kind:"artifact",id:i.artifactId},message:`Artifact "${i.artifactId}" format "${n}" could not be read.`,hint:"Retry retrieval or rebuild the artifact."})]}})}),dU=o.fn("codeMode.applyDiagramPatch.workflow")(function*(e){let t,a=l.q$Z(dq)(e),s=n2.oJ(a)?yield*dF(a.success.source.scene,"source.scene"):void 0;if(s)return yield*new cN({status:"invalid_input",context:{issues:[s]}});let i=l.q$Z(lz,{errors:"all",reportInput:!0})(e);if(!n2.oJ(i))return yield*new cN({status:"invalid_input",context:{issues:c5(ae(i.failure))}});let r=yield*cC,n=i.success,c=yield*o.OH5(()=>r.createId("patch")),d={patchId:c,...dM(n.requestId)},p=yield*dk(n).pipe(o.xm_(e=>new cN({status:e.status,context:{...d,...e.context}}))),h={...d,...p.sourceArtifactId?{sourceArtifactId:p.sourceArtifactId}:{}},g=p.scene;if(g.elements.length>ts.maxElements)t=[{code:"limit_exceeded",message:`Canvas exceeds ${ts.maxElements} elements.`,path:"elements"}];else{let e=dl(g);t=e?ty(e).filter(e=>"limit_exceeded"===e.code):[]}if(t.length>0)return yield*new cN({status:"invalid_input",context:{...h,issues:da(t)}});let u=dr(g),f=[];for(let e of n.operations)if((f=function(e,t){switch(t.op){case"setDefaultStyle":case"setStyle":if(t.style.backgroundColor&&(e.backgroundColor=t.style.backgroundColor),"setDefaultStyle"===t.op){for(let a of(t.style.strokeColor&&(e.accentColor=t.style.strokeColor),dn(e)))t.style.fillColor&&(a.fillColor=t.style.fillColor),t.style.strokeColor&&(a.strokeColor=t.style.strokeColor),t.style.textColor&&(a.textColor=t.style.textColor);for(let a of dd(e))t.style.strokeColor&&(a.strokeColor=t.style.strokeColor),t.style.textColor&&(a.textColor=t.style.textColor);for(let a of dc(e))t.style.textColor&&(a.textColor=t.style.textColor);return[]}let a=dh(e,t.selector);if(0===a.nodes.length&&0===a.arrows.length&&0===a.texts.length)return[dg(t)];for(let s of a.nodes)if(t.style.fillColor&&(s.fillColor=t.style.fillColor),t.style.strokeColor&&(s.strokeColor=t.style.strokeColor),t.style.textColor){s.textColor=t.style.textColor;let a=du(e,s.id);a&&(a.textColor=t.style.textColor)}for(let s of a.arrows)if(t.style.strokeColor&&(s.strokeColor=t.style.strokeColor),t.style.textColor){s.textColor=t.style.textColor;let a=du(e,s.id);a&&(a.textColor=t.style.textColor)}for(let e of a.texts)t.style.textColor&&(e.textColor=t.style.textColor);return[];case"setShape":let s=dh(e,t.selector);if(0===s.nodes.length)return[dg(t)];let l=[];for(let a of s.nodes){if(a.shape=t.shape,"polygon"===t.shape?a.points=[{x:a.width/2,y:0},{x:a.width,y:a.height/2},{x:a.width/2,y:a.height},{x:0,y:a.height/2}]:delete a.points,"circle"===t.shape){let e=Math.max(a.width,a.height);a.x-=(e-a.width)/2,a.y-=(e-a.height)/2,a.width=e,a.height=e,l.push(a.nodeId)}!function(e,t){let a=du(e,t.id);a&&(a.x=t.x+t.width/2,a.y=t.y+t.height/2)}(e,a)}return df(e,l),[];case"translate":return function(e,t){let a=dh(e,t.selector);if(0===a.nodes.length&&0===a.arrows.length&&0===a.texts.length)return[dg(t)];let s=new Set,l=new Set;for(let i of a.nodes){i.x+=t.dx,i.y+=t.dy,s.add(i.nodeId);let a=du(e,i.id);a&&(a.x+=t.dx,a.y+=t.dy,l.add(a.id))}for(let s of a.arrows){s.points=s.points.map(e=>{var a,s;return a=t.dx,s=t.dy,{x:e.x+a,y:e.y+s}});let a=du(e,s.id);a&&(a.x+=t.dx,a.y+=t.dy,l.add(a.id))}for(let e of a.texts)l.has(e.id)||(e.x+=t.dx,e.y+=t.dy);return df(e,[...s]),dw(e),[]}(e,t);case"replaceText":let i=dh(e,t.selector);if(0===i.nodes.length&&0===i.arrows.length&&0===i.texts.length)return[dg(t)];for(let a of i.nodes){a.label=t.text;let s=du(e,a.id);s&&(s.text=t.text)}for(let a of i.arrows){a.label=t.text;let s=du(e,a.id);s&&(s.text=t.text)}for(let e of i.texts)e.text=t.text;return[];case"rerouteEdges":let o;return 0===(o=dh(e,t.selector)).arrows.length?[dg(t)]:o.arrows.flatMap(t=>dy(e,t));case"insert":let r=new Set(e.elements.map(e=>e.id)),n=t.elements.map(e=>e.id);if(new Set(n).size!==n.length||n.some(e=>r.has(e)))return db(t,"Inserted elements must use ids that are unique within the canvas.");let c=dx(e.zOrder,t.beforeId,t.afterId);return void 0===c?db(t,"Insert specifies an unknown anchor or both beforeId and afterId."):(e.elements.push(...t.elements.map(e=>structuredClone(e))),e.zOrder.splice(c,0,...n),[]);case"remove":return function(e,t){let a,s=function(e,t){let a=dh(e,t),s=new Set([...a.nodes.map(e=>e.id),...a.arrows.map(e=>e.id),...a.texts.map(e=>e.id)]),l=new Set(t.ids??[]);for(let t of e.elements)l.has(t.id)&&s.add(t.id);return s}(e,t.selector);if(0===s.size)return[dg(t)];let l=new Set(e.elements.flatMap(e=>"node"===e.type&&s.has(e.id)?[e.nodeId]:[]));do for(let t of(a=s.size,e.elements))("text"===t.type&&(t.containerId&&s.has(t.containerId)||dd(e).some(a=>s.has(a.id)&&du(e,a.id)?.id===t.id))||"arrow"===t.type&&(l.has(t.sourceNodeId)||l.has(t.targetNodeId))||"line"===t.type&&(t.startBinding&&s.has(t.startBinding.elementId)||t.endBinding&&s.has(t.endBinding.elementId)))&&s.add(t.id);while(s.size!==a)let i=e.elements.filter(e=>!s.has(e.id)).map(e=>{if(e.frameId&&s.has(e.frameId)){let{frameId:t,...a}=e;return a}return e});e.elements.splice(0,e.elements.length,...i);let o=e.zOrder.filter(e=>!s.has(e));e.zOrder.splice(0,e.zOrder.length,...o);let r=e.layouts.map(e=>({...e,ids:e.ids.filter(e=>!s.has(e))})).filter(e=>e.ids.length>0);return e.layouts.splice(0,e.layouts.length,...r),dw(e),[]}(e,t);case"replace":let d;return(d=e.elements.findIndex(e=>e.id===t.id))<0?[dg(t)]:t.element.id!==t.id?db(t,"Replacement element id must match the stable id being replaced."):(e.elements.splice(d,1,structuredClone(t.element)),dw(e),[]);case"reorder":let p=new Set(t.ids);if(p.size!==t.ids.length||t.ids.some(t=>!e.zOrder.includes(t)))return db(t,"Reorder ids must be unique ids already present in zOrder.");let h=e.zOrder.filter(e=>!p.has(e)),g=dx(h,t.beforeId,t.afterId);return void 0===g?db(t,"Reorder specifies an unknown anchor or both beforeId and afterId."):(h.splice(g,0,...t.ids),e.zOrder.splice(0,e.zOrder.length,...h),[]);case"group":case"ungroup":let u=new Set(t.ids);if(t.ids.some(t=>!e.elements.some(e=>e.id===t)))return[dg(t)];let f=e.elements.map(e=>u.has(e.id)?"group"===t.op?{...e,groupIds:[...new Set([...e.groupIds??[],t.groupId])]}:{...e,groupIds:t.groupId?(e.groupIds??[]).filter(e=>e!==t.groupId):[]}:e);return e.elements.splice(0,e.elements.length,...f),[]}}(g,e)).length>0)break;if(f.length>0)return yield*new cN({status:f[0]?.code==="unknown_patch_target"?"target_not_found":"unsupported_operation",context:{...h,issues:f}});if(n.options?.preserveConnectivity!==!1){let e=dr(g);if(!(u.length===e.length&&u.every((t,a)=>t===e[a])))return yield*new cN({status:"connectivity_changed",context:{...h,issues:[cJ({code:"patch_preserve_connectivity_failed",stage:"flowchart",ref:{kind:"diagram",id:g.diagramId},message:"Patch changed the diagram edge connectivity.",hint:"Use buildFlowchart for process-graph structure or buildMindmap for hierarchy structure."})]}})}let m=dl(g);if(!m)return yield*new cN({status:"render_failed",context:{...h,issues:[cJ({code:"patch_output_invalid",stage:"render",ref:{kind:"diagram",id:g.diagramId},message:"Patched scene has an invalid arrow point list.",hint:"Reroute edges or rebuild the flowchart artifact."})]}});let v=yield*cd(m,r.icons),y=v.scene,w=ty(y);if(w.length>0)return yield*new cN({status:"render_failed",context:{...h,partial:dC(y),issues:[...v.issues,...da(w)]}});let x={...h,partial:dC(y)},b=yield*dL({scene:y,formats:c8(n.options),inlineFormats:c9(n.options),...n.requestId?{requestId:n.requestId}:{},validationIssues:ds,...p.sourceArtifactId?{provenance:{sourceArtifactId:p.sourceArtifactId}}:{}}).pipe(o.xm_(e=>new cN({status:e.status,context:{..."export_failed"===e.status?x:h,issues:e.issues}})));return{ok:!0,status:"accepted",patchId:c,...dM(n.requestId),...p.sourceArtifactId?{sourceArtifactId:p.sourceArtifactId}:{},artifact:b,issues:v.issues}}),dX=o.fn("codeMode.searchIcons.workflow")(function*(e){let t=l.q$Z(l6,{errors:"all",reportInput:!0})(e);if(!n2.oJ(t))return yield*new cj({status:"invalid_input",context:{issues:c5(ae(t.failure))}});let a=yield*cC,s=t4(t.success.q),i=a.icons?.search(s,t.success.limit??10)??[];return{ok:!0,status:"accepted",query:s,icons:i.map(({collection:e,name:t,slug:a})=>({collection:e,name:t,slug:a})),issues:a.icons?[]:[cJ({code:"unknown_icon",severity:"warning",stage:"input",ref:{kind:"request",path:"q"},message:"This Sketchi runtime has no icon catalog.",hint:"Omit node icons on this host."})]}});function dY(e,t,a){return o.fn(`codeMode.${e}`)(s=>{var l,i,n;let c,d,p,h;return l=e,i=s,n=t(s).pipe(o.YWq({onFailure:a,onSuccess:e=>e})),n1(o.JkU(function*(){let e=yield*r.Ru,t=yield*n,a=yield*r.Ru,s=t.ok?"success":"failure",i=t.ok?void 0:t.status??"unknown_failure";yield*n0(cx,1,{...i?{failureCategory:i}:{},operation:l,outcome:s,surface:"code_mode"}),yield*n0(cM,a-e,{...i?{failureCategory:i}:{},operation:l,outcome:s,surface:"code_mode"}),i&&(yield*n0(cb,1,{failureCategory:i,operation:l,surface:"code_mode"}));let o="buildFlowchart"===l?"flowchart":"buildMindmap"===l?"mindmap":"buildSequenceDiagram"===l?"sequence":"buildTimeline"===l?"timeline":"buildChart"===l?"chart":"buildStateMachine"===l?"state-machine":"createCanvas"===l?"canvas":"applyDiagramPatch"===l?"patch":void 0;return t.ok&&o&&(yield*n0(ck,1,{artifactKind:o,operation:l,surface:"code_mode"})),t}),(c=c_(i),d=c_(c?.source),p="string"==typeof c?.artifactId?c.artifactId:"string"==typeof d?.artifactId?d.artifactId:void 0,h="string"==typeof c?.requestId?c.requestId:void 0,{...p?{artifactId:p}:{},...h?{requestId:h}:{}}))})}let dT=dY("buildFlowchart",dE,dz),dZ=dY("buildMindmap",dB,dz),dG=dY("buildSequenceDiagram",dA,dz),dD=dY("buildStateMachine",dS,dz),dR=dY("buildTimeline",dP,dz),d$=dY("buildChart",dV,dz);dY("createCanvas",dI,dz),dY("getArtifact",dO,dz),dY("searchIcons",dX,dz);let dj=dY("applyDiagramPatch",dU,dz),dN=h,dW={flowchart:a4,mindmap:sH,sequence:se,timeline:sa,chart:sl,"state-machine":sd};function dJ(e){return dN.some(t=>t===e)}function dK(e,t){let a={spec:e.spec,...t?{options:t}:{}};switch(e.type){case"flowchart":return dT(a);case"mindmap":return dZ(a);case"sequence":return dG(a);case"timeline":return dR(a);case"chart":return d$(a);case"state-machine":return dD(a)}}},4733(e,t,a){function s(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function l(e){return Array.isArray(e)&&e.every(e=>"string"==typeof e)}function i(e){var t;return s(e)&&l(e.aliases)&&"number"==typeof e.bytes&&"string"==typeof e.collection&&l(e.keywords)&&"string"==typeof e.name&&"string"==typeof e.slug&&"string"==typeof e.svgPath&&(void 0===e.variant||"string"==typeof e.variant)&&s(t=e.viewBox)&&"number"==typeof t.height&&"number"==typeof t.minX&&"number"==typeof t.minY&&"number"==typeof t.width}function o(e){if(!s(e)||1!==e.version||!Array.isArray(e.icons)||!e.icons.every(i)||!s(e.summary)||"number"!=typeof e.summary.totalIcons||void 0!==e.generatedAt&&"string"!=typeof e.generatedAt)throw Error("Icon manifest does not match the public contract.");return{..."string"==typeof e.generatedAt?{generatedAt:e.generatedAt}:{},icons:e.icons,summary:{collectionCounts:function(e){if(!s(e))throw Error("Icon manifest collection counts are invalid.");let t={};for(let[a,s]of Object.entries(e)){if("number"!=typeof s)throw Error(`Icon manifest count for ${a} is invalid.`);t[a]=s}return t}(e.summary.collectionCounts),totalIcons:e.summary.totalIcons},version:1}}function r(e){return"gcp"===e?"Google Cloud":"gcp-legacy"===e?"Google Cloud Classic":e.split("-").map(e=>["ai","ci","iot","paas"].includes(e)?e.toUpperCase():e.charAt(0).toUpperCase()+e.slice(1)).join(" ")}a.d(t,{L:()=>o,y:()=>r})},8713(e,t,a){let s=/<svg\b[^>]*>/u,l=/\sviewBox\s*=\s*(["'])([^"']*)\1/u;function i(e){return void 0===e.variant&&e.bytes<=65536}function o(e){let t=s.exec(e);if(!t)throw Error("Node logo source has no <svg> root element.");let a=t[0],i=l.exec(a)?.[2]?.trim().split(/[\s,]+/u).map(Number);if(!i||4!==i.length||i.some(e=>!Number.isFinite(e))||!((i[2]??0)>0&&(i[3]??0)>0))throw Error("Node logo source has no valid viewBox.");let o=[/\sxmlns\s*=/u.test(a)?"":' xmlns="http://www.w3.org/2000/svg"',/\swidth\s*=/u.test(a)?"":` width="${i[2]}"`,/\sheight\s*=/u.test(a)?"":` height="${i[3]}"`].join("");if(!o)return e;let r=t.index+4;return`${e.slice(0,r)}${o}${e.slice(r)}`}a.d(t,{Bn:()=>o,nC:()=>i})},9095(e){e.exports=JSON.parse('[{"name":"Agola CI","constant":"AGOLA","env":"AGOLA_GIT_REF","pr":"AGOLA_PULL_REQUEST_ID"},{"name":"Alpic","constant":"ALPIC","env":"ALPIC_HOST"},{"name":"Appcircle","constant":"APPCIRCLE","env":"AC_APPCIRCLE","pr":{"env":"AC_GIT_PR","ne":"false"}},{"name":"AppVeyor","constant":"APPVEYOR","env":"APPVEYOR","pr":"APPVEYOR_PULL_REQUEST_NUMBER"},{"name":"AWS CodeBuild","constant":"CODEBUILD","env":"CODEBUILD_BUILD_ARN","pr":{"env":"CODEBUILD_WEBHOOK_EVENT","any":["PULL_REQUEST_CREATED","PULL_REQUEST_UPDATED","PULL_REQUEST_REOPENED"]}},{"name":"Azure Pipelines","constant":"AZURE_PIPELINES","env":"TF_BUILD","pr":{"BUILD_REASON":"PullRequest"}},{"name":"Bamboo","constant":"BAMBOO","env":"bamboo_planKey"},{"name":"Bitbucket Pipelines","constant":"BITBUCKET","env":"BITBUCKET_COMMIT","pr":"BITBUCKET_PR_ID"},{"name":"Bitrise","constant":"BITRISE","env":"BITRISE_IO","pr":"BITRISE_PULL_REQUEST"},{"name":"Buddy","constant":"BUDDY","env":"BUDDY_WORKSPACE_ID","pr":"BUDDY_EXECUTION_PULL_REQUEST_ID"},{"name":"Buildkite","constant":"BUILDKITE","env":"BUILDKITE","pr":{"env":"BUILDKITE_PULL_REQUEST","ne":"false"}},{"name":"CircleCI","constant":"CIRCLE","env":"CIRCLECI","pr":"CIRCLE_PULL_REQUEST"},{"name":"Cirrus CI","constant":"CIRRUS","env":"CIRRUS_CI","pr":"CIRRUS_PR"},{"name":"Cloudflare Pages","constant":"CLOUDFLARE_PAGES","env":"CF_PAGES"},{"name":"Cloudflare Workers","constant":"CLOUDFLARE_WORKERS","env":"WORKERS_CI"},{"name":"Codefresh","constant":"CODEFRESH","env":"CF_BUILD_ID","pr":{"any":["CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_ID"]}},{"name":"Codemagic","constant":"CODEMAGIC","env":"CM_BUILD_ID","pr":"CM_PULL_REQUEST"},{"name":"Codeship","constant":"CODESHIP","env":{"CI_NAME":"codeship"}},{"name":"Drone","constant":"DRONE","env":"DRONE","pr":{"DRONE_BUILD_EVENT":"pull_request"}},{"name":"dsari","constant":"DSARI","env":"DSARI"},{"name":"Earthly","constant":"EARTHLY","env":"EARTHLY_CI"},{"name":"Expo Application Services","constant":"EAS","env":"EAS_BUILD"},{"name":"Gerrit","constant":"GERRIT","env":"GERRIT_PROJECT"},{"name":"Gitea Actions","constant":"GITEA_ACTIONS","env":"GITEA_ACTIONS"},{"name":"GitHub Actions","constant":"GITHUB_ACTIONS","env":"GITHUB_ACTIONS","pr":{"GITHUB_EVENT_NAME":"pull_request"}},{"name":"GitLab CI","constant":"GITLAB","env":"GITLAB_CI","pr":"CI_MERGE_REQUEST_ID"},{"name":"GoCD","constant":"GOCD","env":"GO_PIPELINE_LABEL"},{"name":"Google Cloud Build","constant":"GOOGLE_CLOUD_BUILD","env":"BUILDER_OUTPUT"},{"name":"Harness CI","constant":"HARNESS","env":"HARNESS_BUILD_ID"},{"name":"Heroku","constant":"HEROKU","env":{"env":"NODE","includes":"/app/.heroku/node/bin/node"}},{"name":"Hudson","constant":"HUDSON","env":"HUDSON_URL"},{"name":"Jenkins","constant":"JENKINS","env":["JENKINS_URL","BUILD_ID"],"pr":{"any":["ghprbPullId","CHANGE_ID"]}},{"name":"LayerCI","constant":"LAYERCI","env":"LAYERCI","pr":"LAYERCI_PULL_REQUEST"},{"name":"Magnum CI","constant":"MAGNUM","env":"MAGNUM"},{"name":"Netlify CI","constant":"NETLIFY","env":"NETLIFY","pr":{"env":"PULL_REQUEST","ne":"false"}},{"name":"Nevercode","constant":"NEVERCODE","env":"NEVERCODE","pr":{"env":"NEVERCODE_PULL_REQUEST","ne":"false"}},{"name":"Prow","constant":"PROW","env":"PROW_JOB_ID"},{"name":"ReleaseHub","constant":"RELEASEHUB","env":"RELEASE_BUILD_ID"},{"name":"Render","constant":"RENDER","env":"RENDER","pr":{"IS_PULL_REQUEST":"true"}},{"name":"Sail CI","constant":"SAIL","env":"SAILCI","pr":"SAIL_PULL_REQUEST_NUMBER"},{"name":"Screwdriver","constant":"SCREWDRIVER","env":"SCREWDRIVER","pr":{"env":"SD_PULL_REQUEST","ne":"false"}},{"name":"Semaphore","constant":"SEMAPHORE","env":"SEMAPHORE","pr":"PULL_REQUEST_NUMBER"},{"name":"Sourcehut","constant":"SOURCEHUT","env":{"CI_NAME":"sourcehut"}},{"name":"Strider CD","constant":"STRIDER","env":"STRIDER"},{"name":"TaskCluster","constant":"TASKCLUSTER","env":["TASK_ID","RUN_ID"]},{"name":"TeamCity","constant":"TEAMCITY","env":"TEAMCITY_VERSION"},{"name":"Travis CI","constant":"TRAVIS","env":"TRAVIS","pr":{"env":"TRAVIS_PULL_REQUEST","ne":"false"}},{"name":"Vela","constant":"VELA","env":"VELA","pr":{"VELA_PULL_REQUEST":"1"}},{"name":"Vercel","constant":"VERCEL","env":{"any":["NOW_BUILDER","VERCEL"]},"pr":"VERCEL_GIT_PULL_REQUEST_ID"},{"name":"Visual Studio App Center","constant":"APPCENTER","env":"APPCENTER_BUILD_ID"},{"name":"Woodpecker","constant":"WOODPECKER","env":{"CI":"woodpecker"},"pr":{"CI_BUILD_EVENT":"pull_request"}},{"name":"Xcode Cloud","constant":"XCODE_CLOUD","env":"CI_XCODE_PROJECT","pr":"CI_PULL_REQUEST_NUMBER"},{"name":"Xcode Server","constant":"XCODE_SERVER","env":"XCS"}]')}},r={};function n(e){var t=r[e];if(void 0!==t)return t.exports;var a=r[e]={exports:{}};return o[e].call(a.exports,a,a.exports,n),a.exports}n.m=o,n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},s=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,n.t=function(e,t){if(1&t&&(e=this(e)),8&t||"object"==typeof e&&e&&(4&t&&e.__esModule||16&t&&"function"==typeof e.then))return e;var l=Object.create(null);n.r(l);var i={};a=a||[null,s({}),s([]),s(s)];for(var o=2&t&&e;("object"==typeof o||"function"==typeof o)&&!~a.indexOf(o);o=s(o))Object.getOwnPropertyNames(o).forEach(t=>{i[t]=()=>e[t]});return i.default=()=>e,n.d(l,i),l},n.d=(e,t,a)=>{var s=(t,a)=>{for(var s in t)n.o(t,s)&&!n.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,[a]:t[s]})};s(t,"get"),s(a,"value")},n.f={},n.e=e=>Promise.all(Object.keys(n.f).reduce((t,a)=>(n.f[a](e,t),t),[])),n.u=e=>"chunks/"+e+"."+({548:"7c734cd41f2be66d",712:"f6dae7dee670211d"})[e]+".js",n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nc=void 0,l={889:0},i=e=>{var t,a,s=e.__rspack_esm_ids,i=e.__webpack_modules__,o=e.__rspack_esm_runtime,r=0;for(t in i)n.o(i,t)&&(n.m[t]=i[t]);for(o&&o(n);r<s.length;r++)a=s[r],n.o(l,a)&&l[a]&&l[a][0](),l[s[r]]=0},n.f.j=function(e,t){var a=n.o(l,e)?l[e]:void 0;if(0!==a)if(a)t.push(a[1]);else{var s=import("./"+n.u(e)).then(i,t=>{throw 0!==l[e]&&(l[e]=void 0),t}),s=Promise.race([s,new Promise(t=>{a=l[e]=[t]})]);t.push(a[1]=s)}},n(2141);
|
|
250
|
+
${m}`,14),M=Math.cos(o.mid)>=-1e-9?1:-1;p.push({slice:o,text:k,side:M,preferred:166*Math.sin(o.mid)})}let h=e=>p.filter(t=>t.side===e).length,g=e=>Math.abs(Math.cos(e.slice.mid));for(let e of p.filter(e=>g(e)<Math.sin(oc)).toSorted((e,t)=>g(e)-g(t)))h(e.side)-1>h(1===e.side?-1:1)&&(e.side=1===e.side?-1:1);let u=e=>Math.atan2(Math.abs(Math.sin(e.slice.mid)),e.side*Math.cos(e.slice.mid));for(let t of[1,-1]){let a=p.filter(e=>e.side===t),s=a.filter(e=>e.preferred<0).toSorted((e,t)=>u(e)-u(t)),l=a.filter(e=>e.preferred>=0).toSorted((e,t)=>u(e)-u(t)),i=new Map,o=1/0;for(let e of s){let t=Math.min(e.preferred-e.text.height/2,o-6-e.text.height);i.set(e,t),o=t}let r=s.length?Math.max(...s.map(e=>i.get(e)+e.text.height))+6:-1/0;for(let e of l){let t=Math.max(e.preferred-e.text.height/2,r);i.set(e,t),r=t+e.text.height+6}[...s,...l].forEach(a=>{let s=i.get(a),l=s+a.text.height/2,o=180*t,r=t>0?o:o-a.text.width,n={groupIds:[`chart:slice:${a.slice.index}`]},c={x:152*Math.cos(a.slice.mid),y:152*Math.sin(a.slice.mid)},d={x:164*Math.cos(a.slice.mid),y:164*Math.sin(a.slice.mid)};e.line(`chart:leader:${a.slice.index}:a`,c,d,{strokeColor:oi,...n},"middle"),e.line(`chart:leader:${a.slice.index}:b`,d,{x:o-4*t,y:l},{strokeColor:oi,...n},"middle"),e.text(`chart:slice-label:${a.slice.index}`,a.text,r,s,14,ol,t>0?"left":"right",n)})}}(a,t),ox(a,t,{colors:[]});else if("line"===t.kind)!function(e,t){let a,s=t.categories.length,l=i5(t.unit),i=oy(t.series.length,!1),o=oz(t.categories,Math.max(Math.min(720/s,120),36,320/s),2,400),r=t.series.flatMap(e=>e.values),n=1===t.series.length&&s<=16?t.series[0].values.map(e=>od(ot(e,l),12)):void 0,c=(e,a,l)=>{if(!n)return;let i=t.series[0].values,r=i.map((t,a)=>({x:o*(a+.5),y:e(t)})),c=t.series.flatMap(t=>t.values.slice(1).map((a,s)=>({from:{x:o*(s+.5),y:e(t.values[s])},to:{x:o*(s+1+.5),y:e(a)}})));p.min<0&&p.max>0&&c.push({from:{x:0,y:e(0)},to:{x:o*s,y:e(0)}});let d=r.map(e=>({left:e.x-7,top:e.y-7,right:e.x+7,bottom:e.y+7})),h=[];for(let[e,t]of r.entries()){let r=n[e],p=i[e-1],g=i[e+1],u=i[e],f=(void 0===p||p<=u)&&(void 0===g||g>=u),m=(void 0===p||p>=u)&&(void 0===g||g<=u),v=(void 0===p||p<=u)&&(void 0===g||g<=u),y=r.width,w=r.height,x=(e,a)=>({left:t.x+e-y/2,top:t.y+a-w/2,right:t.x+e+y/2,bottom:t.y+a+w/2}),b=x(0,-(10+w/2)),k=x(0,10+w/2),M=x(0,-(22+w/2)),C=x(0,22+w/2),z=x(-(y/2+10),-(4+w/2)),_=x(y/2+10,-(4+w/2)),L=x(-(y/2+10),4+w/2),B=x(y/2+10,4+w/2),A=(v?[b,z,_,M,k,C]:f&&!m?[z,B,b,k,M,C]:m&&!f?[_,L,b,k,M,C]:[k,L,B,C,b,M]).find(e=>e.top>=a&&e.bottom<=l&&e.left>=0&&e.right<=o*s&&!c.some(t=>(function(e,t){let{from:a,to:s}=e,l=e=>e.x>t.left&&e.x<t.right&&e.y>t.top&&e.y<t.bottom;if(l(a)||l(s))return!0;let i=[{x:t.left,y:t.top},{x:t.right,y:t.top},{x:t.right,y:t.bottom},{x:t.left,y:t.bottom}];return i.some((e,t)=>{var l;let o,r,n,c,d;return l=i[(t+1)%4],r=(o=(e,t,a)=>(t.x-e.x)*(a.y-e.y)-(t.y-e.y)*(a.x-e.x))(a,s,e),n=o(a,s,l),c=o(e,l,a),d=o(e,l,s),r*n<0&&c*d<0})})(t,{left:e.left-2,top:e.top-2,right:e.right+2,bottom:e.bottom+2}))&&!d.some(t=>og(t,e,2))&&!h.some(t=>og(t,e,3)));if(!A)return;h.push(A)}return h},d=i0(r,!1),p=iQ(d.low,d.high);for(let e=0;e<3&&n;e+=1){let t=280/(p.max-p.min),s=e=>(p.max-e)*t,l=c(s,-1/0,1/0);if(!l)break;let i=l.some(e=>e.top<0),o=l.some(e=>e.bottom>280);if(!i&&!o){a=l;break}2===e?a=c(s,0,280):p=i1(p,o,i)}let h=a?void 0:t.series.map(e=>e.values.map(e=>od(ot(e,l),12)));h&&(o=Math.max(o,...h.flat().map(e=>e.width+8)));let g=280/(p.max-p.min),u=e=>(p.max-e)*g,f=oM(p,l),m=Math.max(...f.labels.map(e=>e.width)),v=o*s;p.ticks.forEach((t,a)=>{let s=u(t),l=f.labels[a];e.line(`chart:grid:${a}`,{x:0,y:s},{x:v,y:s},{strokeColor:oo}),e.text(`chart:tick:${a}`,l,-8-l.width,s-l.height/2,13,oi,"right")}),p.min<0&&p.max>0&&e.line("chart:baseline",{x:0,y:u(0)},{x:v,y:u(0)},{strokeColor:or,strokeWidth:2},"middle"),e.line("chart:axis",{x:0,y:280},{x:v,y:280},{strokeColor:or},"middle");let y=280;if(t.categories.forEach((t,a)=>{let s=o*(a+.5);e.line(`chart:category-tick:${a}`,{x:s,y:280},{x:s,y:285},{strokeColor:or},"middle");let l=op(t,o-10,14),i=e.text(`chart:category:${a}`,l,s-l.width/2,289,14,ol);y=Math.max(y,i.bottom)}),t.series.forEach((a,s)=>{let r=i[s],n={groupIds:[`chart:series:${s}`]};a.values.slice(1).forEach((t,l)=>e.line(`chart:line:${s}:${l+1}`,{x:o*(l+.5),y:u(a.values[l])},{x:o*(l+1+.5),y:u(t)},{strokeColor:r,strokeWidth:2,...n},"middle")),a.values.forEach((a,i)=>{let c=ot(a,l);ob(e,`chart:point:${i}:${s}`,s,o*(i+.5),u(a),r,`${t.categories[i]} \xb7 ${ok(t,s)}: ${c}`,n)})}),h){let a=y+12,s=t.series.map(e=>e.name?op(e.name,200,12):void 0),l=-10-Math.max(0,...s.map(e=>e?e.width+6:0));h.forEach((r,n)=>{let c=t.series[n],d=i[n],p={groupIds:[`chart:table:${n}`]},h=s[n],g=Math.max(r[0].height,h?.height??0),u=a+g/2;e.line(`chart:table-key:${n}:line`,{x:l-22,y:u},{x:l,y:u},{strokeColor:d,strokeWidth:2,...p},"middle"),ob(e,`chart:table-key:${n}`,n,l-11,u,d,c.name??t.title,p),h&&e.text(`chart:table-name:${n}`,h,l+6,a+(g-h.height)/2,12,ol,"left",p),r.forEach((t,s)=>e.text(`chart:table:${s}:${n}`,t,o*(s+.5)-t.width/2,a+(g-t.height)/2,12,oi,"center",p)),a+=g+4}),y=a-4}if(a?.forEach((t,a)=>e.text(`chart:value:${a}:0`,n[a],t.left,t.top,12,oi,"center",{groupIds:["chart:series:0"]})),t.valueAxisTitle){let a=op(t.valueAxisTitle,Math.max(v+m,200),14),s=f.labels[f.labels.length-1];e.text("chart:value-axis-title",a,-8-m,-s.height/2-8-a.height,14,oi,"left")}if(t.categoryAxisTitle){let a=op(t.categoryAxisTitle,Math.max(v,200),14);e.text("chart:category-axis-title",a,(v-a.width)/2,y+12,14,oi)}}(a,t),ox(a,t,{legend:"line",colors:oy(t.series.length,!1)});else{let e=oC(t);"horizontal"===function(e){if(e.orientation)return e.orientation;let t=o_(oC(e)),a=oz(e.categories,t.band,2,161);return a>160||a*e.categories.length>960?"horizontal":"vertical"}(t)?function(e,t){let{diagram:a,stacked:s,colors:l}=t,i=s?1:a.series.length,o=od("0",12).height,r=1===i?24:Math.max(o-2,Math.round(44/i)),n=i*r+(i-1)*2,c=Math.min(220,Math.max(...a.categories.map(e=>od(e,14).width))),d=a.categories.map(e=>op(e,c,14)),p=s?t.totals.flatMap(e=>[e.up,e.down].filter(e=>void 0!==e)):t.labels.flat(),h=e=>(t,a)=>p.some(s=>"up"===e==s.value>=0&&("up"===e?(t.max-s.value)*a:(s.value-t.min)*a)<s.text.width+4+4),g=oL(t.domain,480,h("up"),h("down"));for(let e=4;e>=2;e-=1){let a=oM(g,t.parts);if(480/(g.max-g.min)*g.step>=Math.max(...a.labels.map(e=>e.width))+12)break;g=oL(t.domain,480,h("up"),h("down"),e)}let u=e=>{let s=480/(e.max-e.min),l=t=>(t-e.min)*s;return a.categories.map((e,s)=>{let i=0,o=0;return a.series.map((e,a)=>{let{value:n,text:c}=t.labels[s][a],d=n>=0?i:o,p=d+n;n>=0?i=p:o=p;let h=l(Math.min(d,p)),g=l(Math.max(d,p));g-h<.5&&(n>=0?g=h+.5:h=g-.5);let u=g-h>=c.width+6&&r>=c.height+1;return{s:a,value:n,text:c,left:h,right:g,inside:u}})})};for(let e=0;s&&e<6;e+=1){let e=-g.min/(g.max-g.min)*480,t=Math.max(0,...u(g).map(e=>e.filter(e=>!e.inside&&e.value<0).reduce((e,t)=>e+t.text.width+6,0)));if(0===t||t<=e-2)break;g=i1(g,!0,!1)}let f=480/(g.max-g.min),m=e=>(e-g.min)*f,v=u(g),y=s&&v.flat().some(e=>!e.inside)?o+10:0,w=Math.max(n+14,...d.map(e=>e.height+8))+y,x=oM(g,t.parts),b=w*a.categories.length;g.ticks.forEach((t,a)=>{let s=m(t),l=x.labels[a];e.line(`chart:grid:${a}`,{x:s,y:0},{x:s,y:b},{strokeColor:oo}),e.text(`chart:tick:${a}`,l,s-l.width/2,b+6,13,oi)});let k=m(0);e.line("chart:baseline",{x:k,y:0},{x:k,y:b},{strokeColor:or,strokeWidth:2},"middle"),a.categories.forEach((i,o)=>{let c=w*o+(w-y)/2,p=d[o];e.text(`chart:category:${o}`,p,-10-p.width,c-p.height/2,14,ol,"right");let h=c-n/2;if(a.series.forEach((n,c)=>{let d,p,{value:g,text:u}=t.labels[o][c],f=l[c],y=`chart:bar:${o}:${c}`,w={groupIds:[s?`chart:stack:${o}`:y]},x=s?h:h+c*(r+2);s?{left:d,right:p}=v[o][c]:(d=m(Math.min(0,g)),(p=m(Math.max(0,g)))-d<.5&&(g>=0?p=d+.5:d=p-.5));let b=`${i} \xb7 ${ok(a,c)}: ${u.text}`;if(0!==g&&e.mark(y,"rectangle",{x:d,y:x,width:p-d,height:r},b,s?{fillColor:f,strokeColor:e.surface,strokeWidth:2,...w}:{fillColor:f,strokeColor:f,...w}),s){v[o][c].inside&&e.text(`chart:value:${o}:${c}`,u,(d+p-u.width)/2,x+(r-u.height)/2,12,ov(f),"center",w);return}let k=g>=0?p+4:d-4-u.width;e.text(`chart:value:${o}:${c}`,u,k,x+(r-u.height)/2,12,oi,g>=0?"left":"right",w)}),s){let a=t.totals[o],s={groupIds:[`chart:stack:${o}`]};a.up&&e.text(`chart:total:${o}`,a.up.text,m(a.up.value)+4,c-a.up.text.height/2,12,ol,"left",s),a.down&&e.text(`chart:total-negative:${o}`,a.down.text,m(a.down.value)-4-a.down.text.width,c-a.down.text.height/2,12,ol,"right",s);let l=v[o].filter(e=>!e.inside),i=h+n,r=i+7,d=new Map;for(let e of[!0,!1]){let t=l.filter(t=>t.value>=0===e);ou(t.map(e=>({preferred:(e.left+e.right)/2,size:e.text.width})),e?k+2:0,e?1/0:k-2,6).forEach((e,a)=>d.set(t[a],e))}l.forEach(t=>{let a=d.get(t),l=(t.left+t.right)/2,n={strokeColor:oi,...s};e.line(`chart:leader:${o}:${t.s}:a`,{x:l,y:i+1},{x:l,y:i+3},n,"middle"),e.line(`chart:leader:${o}:${t.s}:b`,{x:l,y:i+3},{x:a+t.text.width/2,y:r-1},n,"middle"),e.text(`chart:value:${o}:${t.s}`,t.text,a,r,12,oi,"center",s)})}});let M=x.labels[0].height;if(a.valueAxisTitle){let t=op(a.valueAxisTitle,480,14);e.text("chart:value-axis-title",t,(480-t.width)/2,b+6+M+10,14,oi)}if(a.categoryAxisTitle){let t=op(a.categoryAxisTitle,Math.max(c,160),14);e.text("chart:category-axis-title",t,-10-t.width,-8-t.height,14,oi,"right")}}(a,e):function(e,t){let{diagram:a,stacked:s,colors:l}=t,i=a.categories.length,o=o_(t),r="vertical"===a.orientation,n=od("0",12).height+4+2,c=a.categories.map((e,t)=>t),d=oL(t.domain,300,(e,a)=>c.some(l=>(s?void 0!==t.totals[l].up:t.labels[l].some(e=>e.value>=0))&&(e.max-(s?t.totals[l].up?.value??0:Math.max(0,...t.labels[l].map(e=>e.value))))*a<n),(e,a)=>c.some(l=>(s?void 0!==t.totals[l].down:t.labels[l].some(e=>e.value<0))&&((s?t.totals[l].down?.value??0:Math.min(0,...t.labels[l].map(e=>e.value)))-e.min)*a<n)),p=e=>{let s=300/(e.max-e.min),l=t=>(e.max-t)*s;return a.categories.map((e,s)=>{let i=0,r=0;return a.series.map((e,a)=>{let{value:n,text:c}=t.labels[s][a],d=n>=0?i:r,p=d+n;n>=0?i=p:r=p;let h=l(Math.max(d,p)),g=l(Math.min(d,p));g-h<.5&&(n>=0?h=g-.5:g=h+.5);let u=g-h>=c.height+1&&c.width+6<=o.thickness;return{s:a,value:n,text:c,top:h,bottom:g,inside:u}})})};for(let e=0;s&&e<6;e+=1){let e=p(d),t=d.max/(d.max-d.min)*300,a=t=>Math.max(0,...e.map(e=>e.filter(e=>!e.inside&&e.value>=0===t).reduce((e,t)=>e+t.text.height+2,0))),s=a(!0)>0&&a(!0)>t-2,l=a(!1)>0&&a(!1)>300-t-2;if(!s&&!l)break;d=i1(d,l,s)}let h=300/(d.max-d.min),g=e=>(d.max-e)*h,u=p(d),f=e=>Math.max(o.thickness,t.totals[e].up?.text.width??0,t.totals[e].down?.text.width??0)/2,m=s?Math.max(0,...u.flat().flatMap(e=>e.inside?[]:[e.text.width])):0,v=Math.max(oz(a.categories,o.band,r?3:2,r?200:161),320/i,m>0?2*Math.max(...c.map(f))+10+m+6:0),y=oM(d,t.parts),w=Math.max(...y.labels.map(e=>e.width)),x=v*i;d.ticks.forEach((t,a)=>{let s=g(t),l=y.labels[a];e.line(`chart:grid:${a}`,{x:0,y:s},{x:x,y:s},{strokeColor:oo}),e.text(`chart:tick:${a}`,l,-8-l.width,s-l.height/2,13,oi,"right")});let b=g(0);e.line("chart:baseline",{x:0,y:b},{x:x,y:b},{strokeColor:or,strokeWidth:2},"middle");let k=o.bars*o.thickness+(o.bars-1)*2,M=300;if(a.categories.forEach((i,r)=>{let n=0+v*(r+.5),c=n-k/2,d=op(i,v-10,14),p=e.text(`chart:category:${r}`,d,n-d.width/2,308,14,ol);if(M=Math.max(M,p.bottom),a.series.forEach((n,d)=>{let p,h,{value:f,text:m}=t.labels[r][d],v=l[d],y=`chart:bar:${r}:${d}`,w={groupIds:[s?`chart:stack:${r}`:y]},x=s?c:c+d*(o.thickness+2);s?{top:p,bottom:h}=u[r][d]:(p=g(Math.max(0,f)),(h=g(Math.min(0,f)))-p<.5&&(f>=0?p=h-.5:h=p+.5));let b=`${i} \xb7 ${ok(a,d)}: ${m.text}`;if(0!==f&&e.mark(y,"rectangle",{x:x,y:p,width:o.thickness,height:h-p},b,s?{fillColor:v,strokeColor:e.surface,strokeWidth:2,...w}:{fillColor:v,strokeColor:v,...w}),s){u[r][d].inside&&e.text(`chart:value:${r}:${d}`,m,x+(o.thickness-m.width)/2,(p+h-m.height)/2,12,ov(v),"center",w);return}let k=f>=0?p-4-m.height:h+4;e.text(`chart:value:${r}:${d}`,m,x+(o.thickness-m.width)/2,k,12,oi,"center",w)}),s){let t=u[r].filter(e=>!e.inside),a=n+f(r)+10,s=new Map;for(let e of[!0,!1]){let a=t.filter(t=>t.value>=0===e);ou(a.map(e=>({preferred:(e.top+e.bottom)/2,size:e.text.height})),e?0:b+2,e?b-2:300,2).forEach((e,t)=>s.set(a[t],e))}let l={groupIds:[`chart:stack:${r}`]};t.forEach(t=>{let i=s.get(t),n=(t.top+t.bottom)/2,d={strokeColor:oi,...l};e.line(`chart:leader:${r}:${t.s}:a`,{x:c+o.thickness+1,y:n},{x:a-4,y:n},d,"middle"),e.line(`chart:leader:${r}:${t.s}:b`,{x:a-4,y:n},{x:a-1,y:i+t.text.height/2},d,"middle"),e.text(`chart:value:${r}:${t.s}`,t.text,a,i,12,oi,"left",l)})}if(s){let a=t.totals[r],s={groupIds:[`chart:stack:${r}`]};a.up&&e.text(`chart:total:${r}`,a.up.text,n-a.up.text.width/2,g(a.up.value)-4-a.up.text.height,12,ol,"center",s),a.down&&e.text(`chart:total-negative:${r}`,a.down.text,n-a.down.text.width/2,g(a.down.value)+4,12,ol,"center",s)}}),a.valueAxisTitle){let t=op(a.valueAxisTitle,Math.max(x+w,200),14),s=y.labels[y.labels.length-1];e.text("chart:value-axis-title",t,-8-w,-s.height/2-8-t.height,14,oi,"left")}if(a.categoryAxisTitle){let t=op(a.categoryAxisTitle,Math.max(x,200),14);e.text("chart:category-axis-title",t,(0+x-t.width)/2,M+12,14,oi)}}(a,e),ox(a,t,{legend:"bar",colors:e.colors})}a.breakRulesUnderText(e=>e.startsWith("chart:grid:")||e.startsWith("chart:category-tick:")||"chart:baseline"===e||"chart:axis"===e);let s=a.bounds(),l=40-s.left,i=40-s.top,o=a.elements.map(e=>{if("line"===e.type){let[t,a,...s]=e.points.map(e=>({x:oh(e.x+l),y:oh(e.y+i)}));return{...e,points:[t,a,...s]}}return"arrow"===e.type?e:{...e,x:oh(e.x+l),y:oh(e.y+i)}});return{kind:"canvas",version:1,diagramId:t.id,title:t.title,width:Math.ceil(s.right-s.left+80),height:Math.ceil(s.bottom-s.top+80),accentColor:t.style.accentColor,backgroundColor:t.style.backgroundColor,elements:o,layers:[],layouts:[],zOrder:a.zOrder()}})(cB(u)),catch:e=>new cD({status:"render_failed",context:{...w,issues:[cJ({code:"render_failed",stage:"render",ref:{kind:"diagram",id:u.id},message:e instanceof Error?e.message:"Unable to render chart scene.",hint:"Repair the categories and series values and retry."})]}})}).pipe(o.fRP("codeMode.buildChart.render")),b=ty(x);if(b.length>0)return yield*new cD({status:"render_failed",context:{...w,issues:da(b).map(e=>({...e,hint:"Use fewer categories or series and retry buildChart."}))}});let k={...w,partial:dC(x)},M=yield*dL({scene:x,formats:c8(h.options),inlineFormats:c9(h.options),...h.requestId?{requestId:h.requestId}:{},validationIssues:dt}).pipe(o.xm_(e=>new cD({status:e.status,context:{..."export_failed"===e.status?k:w,issues:e.issues}})));return{ok:!0,status:"accepted",buildId:g,...dM(h.requestId),normalizedSpec:u,quality:v,artifact:M,issues:[]}}),dH=l._kM({spec:l.$r1,requestId:l.Qrq(l.$r1)}),dq=l._kM({source:l._kM({scene:l.$r1})}),dF=o.fn("codeMode.canvas.serializedLimit")((e,t)=>o.SvU(()=>io(e)).pipe(o.YWq({onFailure:()=>cJ({code:"invalid_type",stage:"input",ref:{kind:"request",path:t},message:"CanvasSpec could not be serialized as JSON.",hint:"Remove non-JSON values or reduce deeply nested fields and retry."}),onSuccess:e=>e<=ts.maxSerializedBytes?void 0:cJ({code:"canvas_limit_exceeded",stage:"canvas",ref:{kind:"request",path:t},message:`CanvasSpec exceeds ${ts.maxSerializedBytes} serialized bytes.`,hint:"Split the visualization into a smaller canvas or reduce repeated text and points."})}))),dI=o.fn("codeMode.createCanvas.workflow")(function*(e){let t=yield*cC,a=yield*o.OH5(()=>t.createId("build")),s=l.q$Z(dH)(e),i=n2.oJ(s)?{spec:s.success.spec,requestId:l.is(l.QfV)(s.success.requestId)?s.success.requestId:void 0}:void 0;if(i){let e=yield*dF(i.spec,"spec");if(e)return yield*new cR({status:"canvas_limit_exceeded"===e.code?"limit_exceeded":"invalid_input",context:{buildId:a,...dM(i.requestId),issues:[e]}})}let r=l.q$Z(s7,{errors:"all",reportInput:!0})(e);if(!n2.oJ(r))return yield*new cR({status:"invalid_input",context:{issues:c5(ae(r.failure))}});let n=r.success,c={buildId:a,...dM(n.requestId)},d=dl(n.spec);if(!d)return yield*new cR({status:"invalid_canvas",context:{...c,issues:[cJ({code:"invalid_canvas_geometry",stage:"canvas",ref:{kind:"request",path:"spec.elements"},message:"CanvasSpec contains an invalid point list.",hint:"Provide at least two points for lines/connectors and three points for polygons."})]}});let p=ty(d).filter(e=>"limit_exceeded"===e.code);if(p.length>0)return yield*new cR({status:"limit_exceeded",context:{...c,issues:da(p)}});let h=yield*cd(function(e){let t=[...e.elements];for(let a of e.layouts)t=function(e,t){switch(t.type){case"row":case"column":case"stack":return function(e,t){let a=tx(e,t.ids),s=a[0];if(!s)return[...e];let l=tw(s),i=t.x??l.x,o=t.y??l.y,r="stack"===t.type?t.gap??0:t.gap??32,n=new Map,c="column"===t.type?o:i;for(let e of a){let a=tw(e);n.set(e.id,{x:"column"===t.type||"stack"===t.type?i:c,y:"column"===t.type?c:o}),"stack"!==t.type&&(c+=("column"===t.type?a.height:a.width)+r)}return tb(e,n)}(e,t);case"grid":return function(e,t){let a=tx(e,t.ids);if(0===a.length)return[...e];let s=Math.max(1,Math.floor(t.columns)),l=a.map(tw),i=Array.from({length:s},(e,t)=>Math.max(0,...l.filter((e,a)=>a%s===t).map(e=>e.width))),o=Array.from({length:Math.ceil(a.length/s)},(e,t)=>Math.max(0,...l.filter((e,a)=>Math.floor(a/s)===t).map(e=>e.height))),r=l[0];if(!r)return[...e];let n=t.x??r.x,c=t.y??r.y,d=t.columnGap??32,p=t.rowGap??32,h=new Map;return a.forEach((e,t)=>{let a=t%s,l=Math.floor(t/s);h.set(e.id,{x:n+i.slice(0,a).reduce((e,t)=>e+t,0)+d*a,y:c+o.slice(0,l).reduce((e,t)=>e+t,0)+p*l})}),tb(e,h)}(e,t);case"align":return function(e,t){let a=tx(e,t.ids);if(0===a.length)return[...e];let s=a.map(tw),l=s.map(e=>tk(e,t.axis)),i=s.map(e=>tk(e,t.axis)+tM(e,t.axis)),o=s.map(e=>tk(e,t.axis)+tM(e,t.axis)/2),r="start"===t.alignment?Math.min(...l):"end"===t.alignment?Math.max(...i):o.reduce((e,t)=>e+t,0)/o.length,n=new Map;return a.forEach((e,a)=>{let l=s[a];if(!l)return;let i="start"===t.alignment?r:"end"===t.alignment?r-tM(l,t.axis):r-tM(l,t.axis)/2;n.set(e.id,{x:"x"===t.axis?i:l.x,y:"y"===t.axis?i:l.y})}),tb(e,n)}(e,t);case"distribute":return function(e,t){let a=tx(e,t.ids).sort((e,a)=>tk(tw(e),t.axis)-tk(tw(a),t.axis));if(a.length<2)return[...e];let s=a.map(tw),l=s[0],i=s[s.length-1];if(!l||!i)return[...e];let o=tk(l,t.axis),r=tk(i,t.axis)+tM(i,t.axis),n=s.reduce((e,a)=>e+tM(a,t.axis),0),c=t.gap??Math.max(0,(r-o-n)/(a.length-1)),d=new Map,p=o;return a.forEach((e,a)=>{let l=s[a];l&&(d.set(e.id,{x:"x"===t.axis?p:l.x,y:"y"===t.axis?p:l.y}),p+=tM(l,t.axis)+c)}),tb(e,d)}(e,t)}}(t,a);let a=function(e){let t=1,a=1;for(let s of e)if(tc(s)){let e=tw(s);t=Math.max(t,e.x+e.width),a=Math.max(a,e.y+e.height)}else if("arrow"===s.type||"line"===s.type)for(let e of s.points)t=Math.max(t,e.x),a=Math.max(a,e.y);return{width:t+48,height:a+48}}(t=function(e){let t=t_(e),a=new Map;for(let t of e)("node"===t.type||"frame"===t.type)&&a.set(t.id,t);let s=e.map(e=>{if("arrow"===e.type){let a=t.get(e.sourceNodeId),s=t.get(e.targetNodeId);return a&&s?{...e,points:[tz(a,tC(s)),...e.points.slice(1,-1),tz(s,tC(a))]}:e}if("line"===e.type){let t=e.startBinding?a.get(e.startBinding.elementId):void 0,s=e.endBinding?a.get(e.endBinding.elementId):void 0;if(!t&&!s)return e;let l=[e.points[0],e.points[1],...e.points.slice(2)];return t&&(l[0]=tz(t,s?tC(s):l[l.length-1]??l[0])),s&&(l[l.length-1]=tz(s,t?tC(t):l[0])),{...e,points:l}}return e}),l=new Map(s.map(e=>[e.id,e]));return s.map(e=>{if("text"!==e.type||!e.containerId)return e;let t=l.get(e.containerId);if(t?.type==="node"){let a=tC(t);return{...e,x:a.x,y:a.y}}if(t?.type==="arrow"){let a=t.points[0],s=t.points[t.points.length-1]??a;return{...e,x:(a.x+s.x)/2,y:(a.y+s.y)/2}}return e})}(t)),s=e.zOrder.length?[...e.zOrder]:t.map((e,t)=>({element:e,index:t})).sort((e,t)=>(e.element.zIndex??e.index)-(t.element.zIndex??t.index)).map(({element:e})=>e.id);return{...e,width:Math.max(e.width,a.width),height:Math.max(e.height,a.height),elements:t,zOrder:s}}(d),t.icons),g=h.scene,u=function(e){let{icons:t,...a}=e;return a}(g),f=ty(g);if(f.length>0){let e=da(f);return yield*new cR({status:e.some(e=>"canvas_limit_exceeded"===e.code)?"limit_exceeded":"invalid_canvas",context:{...c,normalizedSpec:u,issues:[...h.issues,...e]}})}let m={...c,normalizedSpec:u,partial:dC(g)},v=yield*dL({scene:g,formats:c8(n.options),inlineFormats:c9(n.options),...n.requestId?{requestId:n.requestId}:{},validationIssues:ds}).pipe(o.xm_(e=>new cR({status:e.status,context:{...m,issues:e.issues}})));return{ok:!0,status:"accepted",buildId:a,...dM(n.requestId),normalizedSpec:u,artifact:v,issues:h.issues}}),dE=o.fn("codeMode.buildFlowchart.workflow")(function*(e){var t,a;let s,i=l.q$Z(sx,{errors:"all",reportInput:!0})(function(e){if(!cv(e))return e;let{spec:t}=e;if(!cv(t)||!Array.isArray(t.nodes))return e;let a=t.nodes,s=!1,l=Array.isArray(t.edges)?t.edges:void 0,i=l?.map(e=>{if(!cv(e)||void 0!==e.source&&void 0!==e.target||void 0===e.from&&void 0===e.to)return e;s=!0;let{from:t,to:a,...l}=e;return{...l,source:e.source??t,target:e.target??a}}),o=(i??[]).filter(cv),r=new Map,n=e=>{let t=r.get(e);return t||r.set(e,t={incoming:0,outgoing:0,labeledOutgoing:0}),t};for(let e of o){let t=n(e.source);t.outgoing+=1,"string"==typeof e.label&&""!==e.label.trim()&&(t.labeledOutgoing+=1),n(e.target).incoming+=1}let c=a.filter(cv).filter(e=>0===n(e.id).incoming),d=a.map(e=>cv(e)?(e=>{let t=e.kind??e.type,{incoming:a,outgoing:s,labeledOutgoing:l}=n(e.id),i="string"==typeof e.label&&t4(e.label).endsWith("?");if("string"==typeof t){let l=t.trim().toLowerCase().replace(/[\s_-]+/g,""),i=cf[l];if(i)return i;if(cm.has(l)){if(0===a&&s>0)return"start";if(0===s&&a>0)return"end"}return e.kind}return void 0!==t?e.kind:0===s&&a>0?"end":0===a&&1===c.length&&0===l?"start":a>0&&1===s&&0===l&&!i?"process":void 0})(e):void 0),p=a.some((e,t)=>cv(e)&&"end"===d[t]&&n(e.id).incoming>0&&0===n(e.id).outgoing),h=new Set(a.flatMap((e,t)=>cv(e)&&"decision"===d[t]?[e.id]:[])),g=new Set(o.filter(e=>h.has(e.source)&&"string"==typeof e.label&&""!==e.label.trim()).map(e=>e.target)),u=a.map((e,t)=>{if(!cv(e))return e;let a=d[t],l="string"==typeof e.label&&t4(e.label).endsWith("?");if("process"===a&&p&&g.has(e.id)&&0===n(e.id).outgoing&&!l&&(a="end"),a===e.kind)return e;s=!0;let{type:i,...o}=e;return{...o,kind:a}});return s?{...e,spec:{...t,nodes:u,...i?{edges:i}:{}}}:e}(e));if(!n2.oJ(i))return yield*new cX({status:"invalid_input",context:{issues:c5(ae(i.failure),c3)}});let r=yield*cC,n=i.success,c=yield*o.OH5(()=>r.createId("build")),d=(s=t4((a=n.spec).title),{id:cu(a.id)??(s.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,48)||"sketchi-flowchart"),title:s,nodes:a.nodes.map(e=>({id:t4(e.id),label:t4(e.label),kind:e.kind,...e.description?{description:t4(e.description)}:{},...e.icon?{icon:{slug:t4(e.icon.slug)}}:{},...e.group?{group:t4(e.group)}:{}})),edges:a.edges.map((e,t)=>({id:cu(e.id)??`edge-${t+1}`,source:t4(e.source),target:t4(e.target),...e.label?{label:t4(e.label)}:{}})),...a.groups?{groups:a.groups.map(e=>({id:t4(e.id),label:t4(e.label)}))}:{},layout:{direction:a.layout.direction},style:{...y}}),p=cc(d.nodes,r.icons),h={...d,nodes:p.nodes},g={buildId:c,...dM(n.requestId),normalizedSpec:h},u=l.q$Z(eh,{errors:"all",reportInput:!0})({id:h.id,title:h.title,type:"flowchart",nodes:h.nodes.map(e=>({...e,metadata:{}})),edges:h.edges.map(e=>({...e,metadata:{}})),...h.groups?{groups:h.groups.map(e=>({...e}))}:{},layout:{direction:h.layout.direction,edgeRouting:"orthogonal"},style:h.style,metadata:{}});if(!n2.oJ(u))return yield*new cX({status:"invalid_flowchart",context:{...g,issues:(t=ae(u.failure),t.issues.slice(0,20).map(e=>{let t=function(e,t){let a=cK(e.path),s="input"===a?"spec":`spec.${a}`,[l,i]=e.path;if("nodes"===l&&"number"==typeof i){let e=t.nodes[i]?.id;return{kind:"node",...e?{id:e}:{},path:s}}if("edges"===l&&"number"==typeof i){let e=t.edges[i]?.id;return{kind:"edge",...e?{id:e}:{},path:s}}if("groups"===l&&"number"==typeof i){let e=t.groups?.[i]?.id;return{kind:"group",...e?{id:e}:{},path:s}}return{kind:"diagram",id:t.id,path:s}}(e,h);return cJ({code:cQ(e),stage:"flowchart",ref:t,message:e.message,hint:`Fix ${t.path??"spec"} so normalization produces a valid canonical flowchart value.`})}))}});let f=u.success,m=ef(f).map(e=>{let t=function(e){if(e)return{kind:e.kind,...e.id?{id:e.id}:{},...e.path?{path:`spec.${e.path}`}:{}}}(e.ref);return cJ({code:e.code,stage:"flowchart",...t?{ref:t}:{},message:e.message,hint:e.hint})});if(m.length>0)return yield*new cX({status:"invalid_flowchart",context:{...g,issues:m}});ev(f);let v=function(e,t){let a=[],s=0,l=(e,t,l,i=!1)=>{s+=e,a.push({...l,passed:!1,severity:i?"error":"warning",message:t})},i=new Map,o=new Map;for(let t of e.edges)i.set(t.source,(i.get(t.source)??0)+1),i.set(t.target,(i.get(t.target)??0)+1),o.set(t.source,[...o.get(t.source)??[],t]);if(e.nodes.length>1&&0===e.edges.length)l(5,"no edges at all — every node floats unconnected",{code:"disconnected_graph",refs:cg(e.nodes)},!0);else{let t=e.nodes.filter(e=>(i.get(e.id)??0)===0);t.length>0&&e.nodes.length>1&&l(Math.min(1.5*t.length,4.5),`unconnected node(s): ${t.map(e=>e.id).join(", ")}`,{code:"disconnected_graph",refs:cg(t)},!0);let a=function(e){let t=new Map;for(let a of e.nodes)t.set(a.id,[]);for(let a of e.edges)t.get(a.source)?.push(a.target),t.get(a.target)?.push(a.source);let a=new Set,s=0;for(let l of e.nodes){if(a.has(l.id))continue;s+=1;let e=[l.id];for(a.add(l.id);e.length>0;){let s=e.pop();if(void 0===s)break;for(let l of t.get(s)??[])a.has(l)||(a.add(l),e.push(l))}}return s}(e);a>1&&0===t.length&&l(2,`diagram splits into ${a} disconnected islands`,{code:"disconnected_graph",refs:cg(e.nodes)},!0)}e.nodes.length<3?l(2,"too sparse — a useful flow needs at least 3 nodes",{code:"graph_too_sparse",refs:[{kind:"diagram",id:e.id,path:"spec.nodes"}]}):e.nodes.length>24&&l(2,"too dense — trim or merge nodes (24 max)",{code:"graph_too_dense",refs:[{kind:"diagram",id:e.id,path:"spec.nodes"}]});let r=new Map;for(let t of e.nodes){let e=t.label.trim().toLowerCase();r.set(e,(r.get(e)??0)+1)}let n=[...r.entries()].filter(([,e])=>e>1);n.length>0&&l(Math.min(n.length,3),`duplicate label(s): ${n.map(([e])=>`"${e}"`).join(", ")}`,{code:"duplicate_label",refs:cg(e.nodes.filter(e=>(r.get(e.label.trim().toLowerCase())??0)>1))});let c=0,d=0;for(let t of e.nodes){if("decision"!==t.kind){t.label.endsWith("?")&&l(0,`question label on non-decision node "${t.id}"; use kind "decision" only for branch points`,{code:"question_label_not_decision",refs:cg([t])});continue}let e=o.get(t.id)??[];e.length<2?(c+=1,l(0,`decision "${t.id}" needs at least 2 outgoing branches`,{code:"underbranched_decision",refs:cg([t])},!0)):e.some(e=>!e.label)&&(d+=1,l(0,`label every branch out of decision "${t.id}" (yes/no, …)`,{code:"unlabeled_decision_branch",refs:cg([t])}))}s+=Math.min(1.5*c,4.5)+Math.min(d,3);let p=e.nodes.filter(e=>e.label.length>42);p.length>0&&l(Math.min(.5*p.length,2),`shorten label(s): ${p.map(e=>e.id).join(", ")}`,{code:"label_too_long",refs:cg(p)});let h=e.nodes.filter(e=>cp.test(e.label.trim()));h.length>0&&l(Math.min(h.length,3),`generic label(s) say nothing: ${h.map(e=>`"${e.label}"`).join(", ")}`,{code:"generic_label",refs:cg(h)}),(e.title.trim().length<4||ch.test(e.title.trim()))&&l(.5,"give the diagram a specific title",{code:"weak_title",refs:[{kind:"diagram",id:e.id,path:"spec.title"}]});let g=Math.max(0,Math.round((10-s)*10)/10);return{accepted:g>=t&&!a.some(e=>"error"===e.severity),score:g,threshold:t,summary:{nodeCount:e.nodes.length,edgeCount:e.edges.length},checks:a}}(f,n.options?.minQualityScore??8),w={...g,quality:v};if(!v.accepted)return yield*new cX({status:"quality_failed",context:{...w,issues:c7(v)}});let x=yield*o.SvU({try:()=>nb(f),catch:e=>new cX({status:"render_failed",context:{...w,issues:[cJ({code:"render_failed",stage:"render",ref:{kind:"diagram",id:h.id},message:e instanceof Error?e.message:"Unable to render flowchart scene.",hint:"Simplify the graph or retry with a smaller flowchart."})]}})}).pipe(o.fRP("codeMode.buildFlowchart.render")),b=yield*cd(x,r.icons),k=b.scene,M={...w,partial:dC(k)},C=yield*dL({scene:k,formats:c8(n.options),inlineFormats:c9(n.options),...n.requestId?{requestId:n.requestId}:{},validationIssues:dt}).pipe(o.xm_(e=>new cX({status:e.status,context:{..."export_failed"===e.status?M:w,issues:e.issues}})));return{ok:!0,status:"accepted",buildId:c,...dM(n.requestId),normalizedSpec:h,quality:v,artifact:C,issues:[...p.issues,...b.issues]}}),dO=o.fn("codeMode.getArtifact.workflow")(function*(e){let t=l.q$Z(la,{errors:"all",reportInput:!0})(e);if(!n2.oJ(t))return yield*new c$({status:"invalid_input",context:{issues:c5(ae(t.failure))}});let a=yield*cC,s=yield*ia,i=t.success,r=yield*s.readManifest(i.artifactId).pipe(o.xm_(e=>new c$({status:"storage_failed",context:{issues:[d_(e,"storage_read_failed")]}})));if(!r)return yield*new c$({status:"not_found",context:{issues:[cJ({code:"patch_source_unavailable",stage:"storage",ref:{kind:"artifact",id:i.artifactId},message:`Artifact "${i.artifactId}" was not found.`,hint:"Use the artifactId returned by buildFlowchart or applyDiagramPatch."})]}});let n=i.format??"scene";if(!r.formats.some(e=>e.format===n))return yield*new c$({status:"format_unavailable",context:{issues:[cJ({code:"unsupported_artifact_format",stage:"storage",ref:{kind:"artifact",id:i.artifactId},message:`Artifact "${i.artifactId}" does not include format "${n}".`,hint:"Request a format listed in the artifact bundle."})]}});let c=yield*s.read(i.artifactId,n).pipe(o.xm_(e=>new c$({status:"storage_failed",context:{issues:[d_(e,"storage_read_failed")]}})));return c?{ok:!0,artifactId:i.artifactId,diagramId:r.diagramId,format:n,mimeType:c.mimeType,...a.artifactUrl?{url:a.artifactUrl({artifactId:i.artifactId,format:n})}:{},...!0!==i.inline||!il(n)?{}:{inline:c.data},sizeBytes:c.sizeBytes,...r.provenance?{provenance:r.provenance}:{}}:yield*new c$({status:"format_unavailable",context:{issues:[cJ({code:"patch_source_unavailable",stage:"storage",ref:{kind:"artifact",id:i.artifactId},message:`Artifact "${i.artifactId}" format "${n}" could not be read.`,hint:"Retry retrieval or rebuild the artifact."})]}})}),dU=o.fn("codeMode.applyDiagramPatch.workflow")(function*(e){let t,a=l.q$Z(dq)(e),s=n2.oJ(a)?yield*dF(a.success.source.scene,"source.scene"):void 0;if(s)return yield*new cN({status:"invalid_input",context:{issues:[s]}});let i=l.q$Z(lz,{errors:"all",reportInput:!0})(e);if(!n2.oJ(i))return yield*new cN({status:"invalid_input",context:{issues:c5(ae(i.failure))}});let r=yield*cC,n=i.success,c=yield*o.OH5(()=>r.createId("patch")),d={patchId:c,...dM(n.requestId)},p=yield*dk(n).pipe(o.xm_(e=>new cN({status:e.status,context:{...d,...e.context}}))),h={...d,...p.sourceArtifactId?{sourceArtifactId:p.sourceArtifactId}:{}},g=p.scene;if(g.elements.length>ts.maxElements)t=[{code:"limit_exceeded",message:`Canvas exceeds ${ts.maxElements} elements.`,path:"elements"}];else{let e=dl(g);t=e?ty(e).filter(e=>"limit_exceeded"===e.code):[]}if(t.length>0)return yield*new cN({status:"invalid_input",context:{...h,issues:da(t)}});let u=dr(g),f=[];for(let e of n.operations)if((f=function(e,t){switch(t.op){case"setDefaultStyle":case"setStyle":if(t.style.backgroundColor&&(e.backgroundColor=t.style.backgroundColor),"setDefaultStyle"===t.op){for(let a of(t.style.strokeColor&&(e.accentColor=t.style.strokeColor),dn(e)))t.style.fillColor&&(a.fillColor=t.style.fillColor),t.style.strokeColor&&(a.strokeColor=t.style.strokeColor),t.style.textColor&&(a.textColor=t.style.textColor);for(let a of dd(e))t.style.strokeColor&&(a.strokeColor=t.style.strokeColor),t.style.textColor&&(a.textColor=t.style.textColor);for(let a of dc(e))t.style.textColor&&(a.textColor=t.style.textColor);return[]}let a=dh(e,t.selector);if(0===a.nodes.length&&0===a.arrows.length&&0===a.texts.length)return[dg(t)];for(let s of a.nodes)if(t.style.fillColor&&(s.fillColor=t.style.fillColor),t.style.strokeColor&&(s.strokeColor=t.style.strokeColor),t.style.textColor){s.textColor=t.style.textColor;let a=du(e,s.id);a&&(a.textColor=t.style.textColor)}for(let s of a.arrows)if(t.style.strokeColor&&(s.strokeColor=t.style.strokeColor),t.style.textColor){s.textColor=t.style.textColor;let a=du(e,s.id);a&&(a.textColor=t.style.textColor)}for(let e of a.texts)t.style.textColor&&(e.textColor=t.style.textColor);return[];case"setShape":let s=dh(e,t.selector);if(0===s.nodes.length)return[dg(t)];let l=[];for(let a of s.nodes){if(a.shape=t.shape,"polygon"===t.shape?a.points=[{x:a.width/2,y:0},{x:a.width,y:a.height/2},{x:a.width/2,y:a.height},{x:0,y:a.height/2}]:delete a.points,"circle"===t.shape){let e=Math.max(a.width,a.height);a.x-=(e-a.width)/2,a.y-=(e-a.height)/2,a.width=e,a.height=e,l.push(a.nodeId)}!function(e,t){let a=du(e,t.id);a&&(a.x=t.x+t.width/2,a.y=t.y+t.height/2)}(e,a)}return df(e,l),[];case"translate":return function(e,t){let a=dh(e,t.selector);if(0===a.nodes.length&&0===a.arrows.length&&0===a.texts.length)return[dg(t)];let s=new Set,l=new Set;for(let i of a.nodes){i.x+=t.dx,i.y+=t.dy,s.add(i.nodeId);let a=du(e,i.id);a&&(a.x+=t.dx,a.y+=t.dy,l.add(a.id))}for(let s of a.arrows){s.points=s.points.map(e=>{var a,s;return a=t.dx,s=t.dy,{x:e.x+a,y:e.y+s}});let a=du(e,s.id);a&&(a.x+=t.dx,a.y+=t.dy,l.add(a.id))}for(let e of a.texts)l.has(e.id)||(e.x+=t.dx,e.y+=t.dy);return df(e,[...s]),dw(e),[]}(e,t);case"replaceText":let i=dh(e,t.selector);if(0===i.nodes.length&&0===i.arrows.length&&0===i.texts.length)return[dg(t)];for(let a of i.nodes){a.label=t.text;let s=du(e,a.id);s&&(s.text=t.text)}for(let a of i.arrows){a.label=t.text;let s=du(e,a.id);s&&(s.text=t.text)}for(let e of i.texts)e.text=t.text;return[];case"rerouteEdges":let o;return 0===(o=dh(e,t.selector)).arrows.length?[dg(t)]:o.arrows.flatMap(t=>dy(e,t));case"insert":let r=new Set(e.elements.map(e=>e.id)),n=t.elements.map(e=>e.id);if(new Set(n).size!==n.length||n.some(e=>r.has(e)))return db(t,"Inserted elements must use ids that are unique within the canvas.");let c=dx(e.zOrder,t.beforeId,t.afterId);return void 0===c?db(t,"Insert specifies an unknown anchor or both beforeId and afterId."):(e.elements.push(...t.elements.map(e=>structuredClone(e))),e.zOrder.splice(c,0,...n),[]);case"remove":return function(e,t){let a,s=function(e,t){let a=dh(e,t),s=new Set([...a.nodes.map(e=>e.id),...a.arrows.map(e=>e.id),...a.texts.map(e=>e.id)]),l=new Set(t.ids??[]);for(let t of e.elements)l.has(t.id)&&s.add(t.id);return s}(e,t.selector);if(0===s.size)return[dg(t)];let l=new Set(e.elements.flatMap(e=>"node"===e.type&&s.has(e.id)?[e.nodeId]:[]));do for(let t of(a=s.size,e.elements))("text"===t.type&&(t.containerId&&s.has(t.containerId)||dd(e).some(a=>s.has(a.id)&&du(e,a.id)?.id===t.id))||"arrow"===t.type&&(l.has(t.sourceNodeId)||l.has(t.targetNodeId))||"line"===t.type&&(t.startBinding&&s.has(t.startBinding.elementId)||t.endBinding&&s.has(t.endBinding.elementId)))&&s.add(t.id);while(s.size!==a)let i=e.elements.filter(e=>!s.has(e.id)).map(e=>{if(e.frameId&&s.has(e.frameId)){let{frameId:t,...a}=e;return a}return e});e.elements.splice(0,e.elements.length,...i);let o=e.zOrder.filter(e=>!s.has(e));e.zOrder.splice(0,e.zOrder.length,...o);let r=e.layouts.map(e=>({...e,ids:e.ids.filter(e=>!s.has(e))})).filter(e=>e.ids.length>0);return e.layouts.splice(0,e.layouts.length,...r),dw(e),[]}(e,t);case"replace":let d;return(d=e.elements.findIndex(e=>e.id===t.id))<0?[dg(t)]:t.element.id!==t.id?db(t,"Replacement element id must match the stable id being replaced."):(e.elements.splice(d,1,structuredClone(t.element)),dw(e),[]);case"reorder":let p=new Set(t.ids);if(p.size!==t.ids.length||t.ids.some(t=>!e.zOrder.includes(t)))return db(t,"Reorder ids must be unique ids already present in zOrder.");let h=e.zOrder.filter(e=>!p.has(e)),g=dx(h,t.beforeId,t.afterId);return void 0===g?db(t,"Reorder specifies an unknown anchor or both beforeId and afterId."):(h.splice(g,0,...t.ids),e.zOrder.splice(0,e.zOrder.length,...h),[]);case"group":case"ungroup":let u=new Set(t.ids);if(t.ids.some(t=>!e.elements.some(e=>e.id===t)))return[dg(t)];let f=e.elements.map(e=>u.has(e.id)?"group"===t.op?{...e,groupIds:[...new Set([...e.groupIds??[],t.groupId])]}:{...e,groupIds:t.groupId?(e.groupIds??[]).filter(e=>e!==t.groupId):[]}:e);return e.elements.splice(0,e.elements.length,...f),[]}}(g,e)).length>0)break;if(f.length>0)return yield*new cN({status:f[0]?.code==="unknown_patch_target"?"target_not_found":"unsupported_operation",context:{...h,issues:f}});if(n.options?.preserveConnectivity!==!1){let e=dr(g);if(!(u.length===e.length&&u.every((t,a)=>t===e[a])))return yield*new cN({status:"connectivity_changed",context:{...h,issues:[cJ({code:"patch_preserve_connectivity_failed",stage:"flowchart",ref:{kind:"diagram",id:g.diagramId},message:"Patch changed the diagram edge connectivity.",hint:"Use buildFlowchart for process-graph structure or buildMindmap for hierarchy structure."})]}})}let m=dl(g);if(!m)return yield*new cN({status:"render_failed",context:{...h,issues:[cJ({code:"patch_output_invalid",stage:"render",ref:{kind:"diagram",id:g.diagramId},message:"Patched scene has an invalid arrow point list.",hint:"Reroute edges or rebuild the flowchart artifact."})]}});let v=yield*cd(m,r.icons),y=v.scene,w=ty(y);if(w.length>0)return yield*new cN({status:"render_failed",context:{...h,partial:dC(y),issues:[...v.issues,...da(w)]}});let x={...h,partial:dC(y)},b=yield*dL({scene:y,formats:c8(n.options),inlineFormats:c9(n.options),...n.requestId?{requestId:n.requestId}:{},validationIssues:ds,...p.sourceArtifactId?{provenance:{sourceArtifactId:p.sourceArtifactId}}:{}}).pipe(o.xm_(e=>new cN({status:e.status,context:{..."export_failed"===e.status?x:h,issues:e.issues}})));return{ok:!0,status:"accepted",patchId:c,...dM(n.requestId),...p.sourceArtifactId?{sourceArtifactId:p.sourceArtifactId}:{},artifact:b,issues:v.issues}}),dX=o.fn("codeMode.searchIcons.workflow")(function*(e){let t=l.q$Z(l6,{errors:"all",reportInput:!0})(e);if(!n2.oJ(t))return yield*new cj({status:"invalid_input",context:{issues:c5(ae(t.failure))}});let a=yield*cC,s=t4(t.success.q),i=a.icons?.search(s,t.success.limit??10)??[];return{ok:!0,status:"accepted",query:s,icons:i.map(({collection:e,name:t,slug:a})=>({collection:e,name:t,slug:a})),issues:a.icons?[]:[cJ({code:"unknown_icon",severity:"warning",stage:"input",ref:{kind:"request",path:"q"},message:"This Sketchi runtime has no icon catalog.",hint:"Omit node icons on this host."})]}});function dY(e,t,a){return o.fn(`codeMode.${e}`)(s=>{var l,i,n;let c,d,p,h;return l=e,i=s,n=t(s).pipe(o.YWq({onFailure:a,onSuccess:e=>e})),n1(o.JkU(function*(){let e=yield*r.Ru,t=yield*n,a=yield*r.Ru,s=t.ok?"success":"failure",i=t.ok?void 0:t.status??"unknown_failure";yield*n0(cx,1,{...i?{failureCategory:i}:{},operation:l,outcome:s,surface:"code_mode"}),yield*n0(cM,a-e,{...i?{failureCategory:i}:{},operation:l,outcome:s,surface:"code_mode"}),i&&(yield*n0(cb,1,{failureCategory:i,operation:l,surface:"code_mode"}));let o="buildFlowchart"===l?"flowchart":"buildMindmap"===l?"mindmap":"buildSequenceDiagram"===l?"sequence":"buildTimeline"===l?"timeline":"buildChart"===l?"chart":"buildStateMachine"===l?"state-machine":"createCanvas"===l?"canvas":"applyDiagramPatch"===l?"patch":void 0;return t.ok&&o&&(yield*n0(ck,1,{artifactKind:o,operation:l,surface:"code_mode"})),t}),(c=c_(i),d=c_(c?.source),p="string"==typeof c?.artifactId?c.artifactId:"string"==typeof d?.artifactId?d.artifactId:void 0,h="string"==typeof c?.requestId?c.requestId:void 0,{...p?{artifactId:p}:{},...h?{requestId:h}:{}}))})}let dT=dY("buildFlowchart",dE,dz),dZ=dY("buildMindmap",dB,dz),dG=dY("buildSequenceDiagram",dA,dz),dD=dY("buildStateMachine",dS,dz),dR=dY("buildTimeline",dP,dz),d$=dY("buildChart",dV,dz);dY("createCanvas",dI,dz),dY("getArtifact",dO,dz),dY("searchIcons",dX,dz);let dj=dY("applyDiagramPatch",dU,dz),dN=h,dW={flowchart:a4,mindmap:sH,sequence:se,timeline:sa,chart:sl,"state-machine":sd};function dJ(e){return dN.some(t=>t===e)}function dK(e,t){let a={spec:e.spec,...t?{options:t}:{}};switch(e.type){case"flowchart":return dT(a);case"mindmap":return dZ(a);case"sequence":return dG(a);case"timeline":return dR(a);case"chart":return d$(a);case"state-machine":return dD(a)}}},4733(e,t,a){function s(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function l(e){return Array.isArray(e)&&e.every(e=>"string"==typeof e)}function i(e){var t;return s(e)&&l(e.aliases)&&"number"==typeof e.bytes&&"string"==typeof e.collection&&l(e.keywords)&&"string"==typeof e.name&&"string"==typeof e.slug&&"string"==typeof e.svgPath&&(void 0===e.variant||"string"==typeof e.variant)&&s(t=e.viewBox)&&"number"==typeof t.height&&"number"==typeof t.minX&&"number"==typeof t.minY&&"number"==typeof t.width}function o(e){if(!s(e)||1!==e.version||!Array.isArray(e.icons)||!e.icons.every(i)||!s(e.summary)||"number"!=typeof e.summary.totalIcons||void 0!==e.generatedAt&&"string"!=typeof e.generatedAt)throw Error("Icon manifest does not match the public contract.");return{..."string"==typeof e.generatedAt?{generatedAt:e.generatedAt}:{},icons:e.icons,summary:{collectionCounts:function(e){if(!s(e))throw Error("Icon manifest collection counts are invalid.");let t={};for(let[a,s]of Object.entries(e)){if("number"!=typeof s)throw Error(`Icon manifest count for ${a} is invalid.`);t[a]=s}return t}(e.summary.collectionCounts),totalIcons:e.summary.totalIcons},version:1}}function r(e){return"gcp"===e?"Google Cloud":"gcp-legacy"===e?"Google Cloud Classic":e.split("-").map(e=>["ai","ci","iot","paas"].includes(e)?e.toUpperCase():e.charAt(0).toUpperCase()+e.slice(1)).join(" ")}a.d(t,{L:()=>o,y:()=>r})},8713(e,t,a){let s=/<svg\b[^>]*>/u,l=/\sviewBox\s*=\s*(["'])([^"']*)\1/u;function i(e){return void 0===e.variant&&e.bytes<=65536}function o(e){let t=s.exec(e);if(!t)throw Error("Node logo source has no <svg> root element.");let a=t[0],i=l.exec(a)?.[2]?.trim().split(/[\s,]+/u).map(Number);if(!i||4!==i.length||i.some(e=>!Number.isFinite(e))||!((i[2]??0)>0&&(i[3]??0)>0))throw Error("Node logo source has no valid viewBox.");let o=[/\sxmlns\s*=/u.test(a)?"":' xmlns="http://www.w3.org/2000/svg"',/\swidth\s*=/u.test(a)?"":` width="${i[2]}"`,/\sheight\s*=/u.test(a)?"":` height="${i[3]}"`].join("");if(!o)return e;let r=t.index+4;return`${e.slice(0,r)}${o}${e.slice(r)}`}a.d(t,{Bn:()=>o,nC:()=>i})},9095(e){e.exports=JSON.parse('[{"name":"Agola CI","constant":"AGOLA","env":"AGOLA_GIT_REF","pr":"AGOLA_PULL_REQUEST_ID"},{"name":"Alpic","constant":"ALPIC","env":"ALPIC_HOST"},{"name":"Appcircle","constant":"APPCIRCLE","env":"AC_APPCIRCLE","pr":{"env":"AC_GIT_PR","ne":"false"}},{"name":"AppVeyor","constant":"APPVEYOR","env":"APPVEYOR","pr":"APPVEYOR_PULL_REQUEST_NUMBER"},{"name":"AWS CodeBuild","constant":"CODEBUILD","env":"CODEBUILD_BUILD_ARN","pr":{"env":"CODEBUILD_WEBHOOK_EVENT","any":["PULL_REQUEST_CREATED","PULL_REQUEST_UPDATED","PULL_REQUEST_REOPENED"]}},{"name":"Azure Pipelines","constant":"AZURE_PIPELINES","env":"TF_BUILD","pr":{"BUILD_REASON":"PullRequest"}},{"name":"Bamboo","constant":"BAMBOO","env":"bamboo_planKey"},{"name":"Bitbucket Pipelines","constant":"BITBUCKET","env":"BITBUCKET_COMMIT","pr":"BITBUCKET_PR_ID"},{"name":"Bitrise","constant":"BITRISE","env":"BITRISE_IO","pr":"BITRISE_PULL_REQUEST"},{"name":"Buddy","constant":"BUDDY","env":"BUDDY_WORKSPACE_ID","pr":"BUDDY_EXECUTION_PULL_REQUEST_ID"},{"name":"Buildkite","constant":"BUILDKITE","env":"BUILDKITE","pr":{"env":"BUILDKITE_PULL_REQUEST","ne":"false"}},{"name":"CircleCI","constant":"CIRCLE","env":"CIRCLECI","pr":"CIRCLE_PULL_REQUEST"},{"name":"Cirrus CI","constant":"CIRRUS","env":"CIRRUS_CI","pr":"CIRRUS_PR"},{"name":"Cloudflare Pages","constant":"CLOUDFLARE_PAGES","env":"CF_PAGES"},{"name":"Cloudflare Workers","constant":"CLOUDFLARE_WORKERS","env":"WORKERS_CI"},{"name":"Codefresh","constant":"CODEFRESH","env":"CF_BUILD_ID","pr":{"any":["CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_ID"]}},{"name":"Codemagic","constant":"CODEMAGIC","env":"CM_BUILD_ID","pr":"CM_PULL_REQUEST"},{"name":"Codeship","constant":"CODESHIP","env":{"CI_NAME":"codeship"}},{"name":"Drone","constant":"DRONE","env":"DRONE","pr":{"DRONE_BUILD_EVENT":"pull_request"}},{"name":"dsari","constant":"DSARI","env":"DSARI"},{"name":"Earthly","constant":"EARTHLY","env":"EARTHLY_CI"},{"name":"Expo Application Services","constant":"EAS","env":"EAS_BUILD"},{"name":"Gerrit","constant":"GERRIT","env":"GERRIT_PROJECT"},{"name":"Gitea Actions","constant":"GITEA_ACTIONS","env":"GITEA_ACTIONS"},{"name":"GitHub Actions","constant":"GITHUB_ACTIONS","env":"GITHUB_ACTIONS","pr":{"GITHUB_EVENT_NAME":"pull_request"}},{"name":"GitLab CI","constant":"GITLAB","env":"GITLAB_CI","pr":"CI_MERGE_REQUEST_ID"},{"name":"GoCD","constant":"GOCD","env":"GO_PIPELINE_LABEL"},{"name":"Google Cloud Build","constant":"GOOGLE_CLOUD_BUILD","env":"BUILDER_OUTPUT"},{"name":"Harness CI","constant":"HARNESS","env":"HARNESS_BUILD_ID"},{"name":"Heroku","constant":"HEROKU","env":{"env":"NODE","includes":"/app/.heroku/node/bin/node"}},{"name":"Hudson","constant":"HUDSON","env":"HUDSON_URL"},{"name":"Jenkins","constant":"JENKINS","env":["JENKINS_URL","BUILD_ID"],"pr":{"any":["ghprbPullId","CHANGE_ID"]}},{"name":"LayerCI","constant":"LAYERCI","env":"LAYERCI","pr":"LAYERCI_PULL_REQUEST"},{"name":"Magnum CI","constant":"MAGNUM","env":"MAGNUM"},{"name":"Netlify CI","constant":"NETLIFY","env":"NETLIFY","pr":{"env":"PULL_REQUEST","ne":"false"}},{"name":"Nevercode","constant":"NEVERCODE","env":"NEVERCODE","pr":{"env":"NEVERCODE_PULL_REQUEST","ne":"false"}},{"name":"Prow","constant":"PROW","env":"PROW_JOB_ID"},{"name":"ReleaseHub","constant":"RELEASEHUB","env":"RELEASE_BUILD_ID"},{"name":"Render","constant":"RENDER","env":"RENDER","pr":{"IS_PULL_REQUEST":"true"}},{"name":"Sail CI","constant":"SAIL","env":"SAILCI","pr":"SAIL_PULL_REQUEST_NUMBER"},{"name":"Screwdriver","constant":"SCREWDRIVER","env":"SCREWDRIVER","pr":{"env":"SD_PULL_REQUEST","ne":"false"}},{"name":"Semaphore","constant":"SEMAPHORE","env":"SEMAPHORE","pr":"PULL_REQUEST_NUMBER"},{"name":"Sourcehut","constant":"SOURCEHUT","env":{"CI_NAME":"sourcehut"}},{"name":"Strider CD","constant":"STRIDER","env":"STRIDER"},{"name":"TaskCluster","constant":"TASKCLUSTER","env":["TASK_ID","RUN_ID"]},{"name":"TeamCity","constant":"TEAMCITY","env":"TEAMCITY_VERSION"},{"name":"Travis CI","constant":"TRAVIS","env":"TRAVIS","pr":{"env":"TRAVIS_PULL_REQUEST","ne":"false"}},{"name":"Vela","constant":"VELA","env":"VELA","pr":{"VELA_PULL_REQUEST":"1"}},{"name":"Vercel","constant":"VERCEL","env":{"any":["NOW_BUILDER","VERCEL"]},"pr":"VERCEL_GIT_PULL_REQUEST_ID"},{"name":"Visual Studio App Center","constant":"APPCENTER","env":"APPCENTER_BUILD_ID"},{"name":"Woodpecker","constant":"WOODPECKER","env":{"CI":"woodpecker"},"pr":{"CI_BUILD_EVENT":"pull_request"}},{"name":"Xcode Cloud","constant":"XCODE_CLOUD","env":"CI_XCODE_PROJECT","pr":"CI_PULL_REQUEST_NUMBER"},{"name":"Xcode Server","constant":"XCODE_SERVER","env":"XCS"}]')}},r={};function n(e){var t=r[e];if(void 0!==t)return t.exports;var a=r[e]={exports:{}};return o[e].call(a.exports,a,a.exports,n),a.exports}n.m=o,n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},s=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,n.t=function(e,t){if(1&t&&(e=this(e)),8&t||"object"==typeof e&&e&&(4&t&&e.__esModule||16&t&&"function"==typeof e.then))return e;var l=Object.create(null);n.r(l);var i={};a=a||[null,s({}),s([]),s(s)];for(var o=2&t&&e;("object"==typeof o||"function"==typeof o)&&!~a.indexOf(o);o=s(o))Object.getOwnPropertyNames(o).forEach(t=>{i[t]=()=>e[t]});return i.default=()=>e,n.d(l,i),l},n.d=(e,t,a)=>{var s=(t,a)=>{for(var s in t)n.o(t,s)&&!n.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,[a]:t[s]})};s(t,"get"),s(a,"value")},n.f={},n.e=e=>Promise.all(Object.keys(n.f).reduce((t,a)=>(n.f[a](e,t),t),[])),n.u=e=>"chunks/"+e+"."+({548:"7c734cd41f2be66d",712:"f6dae7dee670211d"})[e]+".js",n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nc=void 0,l={889:0},i=e=>{var t,a,s=e.__rspack_esm_ids,i=e.__webpack_modules__,o=e.__rspack_esm_runtime,r=0;for(t in i)n.o(i,t)&&(n.m[t]=i[t]);for(o&&o(n);r<s.length;r++)a=s[r],n.o(l,a)&&l[a]&&l[a][0](),l[s[r]]=0},n.f.j=function(e,t){var a=n.o(l,e)?l[e]:void 0;if(0!==a)if(a)t.push(a[1]);else{var s=import("./"+n.u(e)).then(i,t=>{throw 0!==l[e]&&(l[e]=void 0),t}),s=Promise.race([s,new Promise(t=>{a=l[e]=[t]})]);t.push(a[1]=s)}},n(2141);
|