tempest.games 0.2.21 → 0.2.22

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.
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env bun
2
2
  // @bun
3
- var WC=Object.create;var{getPrototypeOf:QC,defineProperty:tU,getOwnPropertyNames:ZC}=Object;var HC=Object.prototype.hasOwnProperty;var OC=($,X,Y)=>{Y=$!=null?WC(QC($)):{};let z=X||!$||!$.__esModule?tU(Y,"default",{value:$,enumerable:!0}):Y;for(let G of ZC($))if(!HC.call(z,G))tU(z,G,{get:()=>$[G],enumerable:!0});return z};var wC=($,X)=>()=>(X||$((X={exports:{}}).exports,X),X.exports);var Z8=($,X)=>{for(var Y in X)tU($,Y,{get:X[Y],enumerable:!0,configurable:!0,set:(z)=>X[Y]=()=>z})};var By=($,X)=>()=>($&&(X=$($=0)),X);var aN=import.meta.require;var oF=wC((ec,nF)=>{var vG=aN("os"),CG=aN("path");function rF($){let X=process.env.XDG_CACHE_HOME||CG.join(vG.homedir(),".cache");return CG.join(X,$)}function Xx($){return CG.join(vG.homedir(),"Library","Caches",$)}function Yx($){let X=process.env.LOCALAPPDATA||CG.join(vG.homedir(),"AppData","Local");return CG.join(X,$,"Cache")}var Gx=function(){switch(vG.platform()){case"darwin":return Xx;case"win32":return Yx;case"aix":case"android":case"freebsd":case"linux":case"netbsd":case"openbsd":case"sunos":return rF;default:return console.error(`(node:${process.pid}) [cachedir] Warning: the platform "${vG.platform()}" is not currently supported by node-cachedir, falling back to "posix". Please file an issue with your platform here: https://github.com/LinusU/node-cachedir/issues/new`),rF}}();nF.exports=function $(X){if(typeof X!=="string")throw new TypeError("id is not a string");if(X.length===0)throw new Error("id cannot be empty");if(/[^0-9a-zA-Z-]/.test(X))throw new Error("id cannot contain special characters");return Gx(X)}});var sN=($,X,Y=R6.STORE)=>{return oX(Y,{key:`${$.key}:JSON`,get:({get:z})=>X.toJson(z($)),set:({set:z},G)=>{z($,X.fromJson(G))}})};function eN($,X,Y){return V7($,{key:`${X.key}:JSON`,get:(G)=>({get:U})=>{let W=U(X,G);return Y.toJson(W)},set:(G)=>({set:U},W)=>{U(X,G,Y.fromJson(W))}},["mutable","json"])}var g4=($)=>JSON.parse($),d$=($)=>JSON.stringify($),Sy=[Array.prototype,Boolean.prototype,Number.prototype,Object.prototype,String.prototype];function tX($){return ZE(R6.STORE,$)}function f2($){return zE(R6.STORE,$)}function sU(...$){if($.length===2)return b1(R6.STORE,...$);return b1(R6.STORE,...$)}function D7($,X,Y=R6.STORE){return Y.joins.set($.key,new YW($,X,Y)),{key:$.key,type:"join",a:$.between[0],b:$.between[1],cardinality:$.cardinality}}function $E($){return OE($,R6.STORE)}var aU=($)=>(X,Y,z,G,...U)=>{console[$](`${X} ${Y} "${z}" ${G}`,...U)},VC={error:aU("error"),info:aU("info"),warn:aU("warn")},XE=class{logLevel;filter;logger;constructor($,X,Y=VC){this.logLevel=$,this.filter=X,this.logger=Y}error=(...$)=>{let X=this.filter?.(...$)??!0;if(this.logLevel!==null){if(X===!0)this.logger.error(...$);else if(X!==!1)this.logger.error(...X)}};info=(...$)=>{let X=this.filter?.(...$)??!0;if(this.logLevel==="info"){if(X===!0)this.logger.info(...$);else if(X!==!1)this.logger.info(...X)}};warn=(...$)=>{let X=this.filter?.(...$)??!0;if(this.logLevel!=="error"&&this.logLevel!==null){if(X===!0)this.logger.warn(...$);else if(X!==!1)this.logger.warn(...X)}}},fy=Symbol.for("claim"),DC=class{store;constructor($=R6.STORE){this.store=$,UE("root",$)}allocate($,X,Y){return sX(this.store,$,X,Y)}fuse($,X,Y){return WE(this.store,$,X,Y)}deallocate($){eX(this.store,$)}claim($,X,Y){return g2(this.store,$,X,Y)}},YE=class{store;realm;constructor($=R6.STORE){this.store=$,this.realm=new DC($)}allocate($,X,Y){sX(this.store,$,X,Y)}deallocate($){eX(this.store,$)}claim($,X,Y){g2(this.store,$,X,Y)}};function N7($){return $W(R6.STORE,$)}function h2($){return XW(R6.STORE,$)}var y4=class $ extends Set{mode="record";subject=new g$;cacheLimit=0;cache=[];cacheIdx=-1;cacheUpdateNumber=-1;constructor(X,Y=0){super(X);if(X instanceof $)this.parent=X,this.cacheUpdateNumber=X.cacheUpdateNumber;if(Y)this.cacheLimit=Y,this.cache=new Array(Y),this.subscribe("auto cache",(z)=>{this.cacheIdx++,this.cacheIdx%=this.cacheLimit,this.cache[this.cacheIdx]=z})}toJSON(){return{members:[...this],cache:this.cache,cacheLimit:this.cacheLimit,cacheIdx:this.cacheIdx,cacheUpdateNumber:this.cacheUpdateNumber}}static fromJSON(X){let Y=new $(X.members,X.cacheLimit);return Y.cache=X.cache,Y.cacheIdx=X.cacheIdx,Y.cacheUpdateNumber=X.cacheUpdateNumber,Y}add(X){let Y=super.add(X);if(this.mode==="record")this.cacheUpdateNumber++,this.emit(`add:${d$(X)}`);return Y}clear(){let X=this.mode==="record"?[...this]:null;if(super.clear(),X)this.cacheUpdateNumber++,this.emit(`clear:${JSON.stringify(X)}`)}delete(X){let Y=super.delete(X);if(this.mode==="record")this.cacheUpdateNumber++,this.emit(`del:${d$(X)}`);return Y}parent=null;child=null;transactionUpdates=null;transaction(X){this.mode="transaction",this.transactionUpdates=[],this.child=new $(this);let Y=this.child._subscribe("transaction",(z)=>{this.transactionUpdates?.push(z)});try{if(X(this.child)){for(let G of this.transactionUpdates)this.doStep(G);this.cacheUpdateNumber++,this.emit(`tx:${this.transactionUpdates.join(";")}`)}}catch(z){throw console.warn("Did not apply transaction to SetRTX; this error was thrown:",z),z}finally{Y(),this.child=null,this.transactionUpdates=null,this.mode="record"}}_subscribe(X,Y){return this.subject.subscribe(X,Y)}subscribe(X,Y){return this.subject.subscribe(X,(z)=>{Y(`${this.cacheUpdateNumber}=${z}`)})}emit(X){this.subject.next(X)}doStep(X){let Y=X.indexOf(":"),z=X.substring(0,Y),G=X.substring(Y+1);switch(z){case"add":this.add(JSON.parse(G));break;case"clear":this.clear();break;case"del":this.delete(JSON.parse(G));break;case"tx":for(let U of G.split(";"))this.doStep(U)}}getUpdateNumber(X){let Y=X.indexOf("=");return Number(X.substring(0,Y))}do(X){let Y=X.indexOf("="),z=Number(X.substring(0,Y)),G=z-this.cacheUpdateNumber;if(G>0){if(G===1){this.mode="playback";let W=X.substring(Y+1);return this.doStep(W),this.mode="record",this.cacheUpdateNumber=z,null}return this.cacheUpdateNumber+1}if(Math.abs(G)<this.cacheLimit){let W=this.cacheIdx+G;if(this.cache[W]===X)return null;this.mode="playback";let Z=!1;while(!Z){this.cacheIdx%=this.cacheLimit;let O=this.cache[this.cacheIdx];if(this.cacheIdx--,!O)return"OUT_OF_RANGE";this.undo(O),Z=this.cacheIdx===W-1}let H=X.substring(Y+1);return this.doStep(H),this.mode="record",this.cacheUpdateNumber=z,null}return"OUT_OF_RANGE"}undoStep(X){let Y=X.indexOf(":"),z=X.substring(0,Y),G=X.substring(Y+1);switch(z){case"add":this.delete(JSON.parse(G));break;case"del":this.add(JSON.parse(G));break;case"clear":{let U=JSON.parse(G);for(let W of U)this.add(W);break}case"tx":{let U=G.split(";");for(let W=U.length-1;W>=0;W--)this.undoStep(U[W])}}}undo(X){let Y=X.indexOf("=");if(Number(X.substring(0,Y))===this.cacheUpdateNumber){this.mode="playback";let G=X.substring(Y+1);return this.undoStep(G),this.mode="record",this.cacheUpdateNumber--,null}return this.cacheUpdateNumber}};function GE($=Math.random){return $().toString(36).slice(2)}var GW=class extends Promise{fate;resolve;reject;done=!1;constructor($){let X,Y;super((z,G)=>{X=z,Y=G});this.resolve=X,this.reject=Y,this.use($ instanceof Promise?$:new Promise($))}pass($,X){if($===this.fate)this.resolve(X),this.done=!0}fail($,X){if($===this.fate)this.reject(X),this.done=!0}use($){if($ instanceof Promise){let X=$;this.fate=X,X.then((Y)=>{this.pass(X,Y)},(Y)=>{this.fail(X,Y)})}else this.resolve($),this.fate=void 0}};function D$($){while($.child!==null)$=$.child;return $}var EC=class ${_buffer;_index=0;constructor(X){let Y;if(typeof X==="number")Y=X;else Y=X.length;this._buffer=Array.from({length:Y})}get buffer(){return this._buffer}get index(){return this._index}add(X){this._buffer[this._index]=X,this._index=(this._index+1)%this._buffer.length}copy(){let X=new $([...this._buffer]);return X._index=this._index,X}},FC={atom_family:"atom",molecule_family:"molecule",mutable_atom_family:"mutable_atom",readonly_held_selector_family:"readonly_held_selector",readonly_pure_selector_family:"readonly_pure_selector",writable_held_selector_family:"writable_held_selector",writable_pure_selector_family:"writable_pure_selector"};function MC($,X){let Y=d$(X),z=`${$.key}(${Y})`,G=FC[$.type],U={key:z,type:G};return Object.assign(U,{family:{key:$.key,subKey:Y}}),Object.assign(U,{counterfeit:!0}),U}function L0($){let X={key:$.key,type:$.type};if("family"in $)X.family=$.family;return X}var E4=class{a;b;cardinality;relations=new Map;contents=new Map;isAType;isBType;isContent;makeContentKey=($,X)=>`${$}:${X}`;warn;getRelatedKeys($){return this.relations.get($)}addRelation($,X){let Y=this.relations.get($),z=this.relations.get(X);if(Y)Y.add(X);else Y=new Set([X]),this.relations.set($,Y);if(z)z.add($);else z=new Set([$]),this.relations.set(X,z)}deleteRelation($,X){let Y=this.relations.get($);if(Y){if(Y.delete(X),Y.size===0)this.relations.delete($);let z=this.relations.get(X);if(z){if(z.delete($),z.size===0)this.relations.delete(X)}}}replaceRelationsUnsafely($,X){this.relations.set($,new Set(X));for(let Y of X){let z=new Set().add($);this.relations.set(Y,z)}}replaceRelationsSafely($,X){let Y=this.relations.get($),z=this.isAType?.($)?$:void 0,G=z===void 0?$:void 0;if(Y)for(let U of Y){z??=U,G??=U;let W=this.relations.get(U);if(W){if(W.size===1)this.relations.delete(U);else W.delete($);this.contents.delete(this.makeContentKey(z,G))}}this.relations.set($,new Set(X));for(let U of X){let W=this.relations.get(U);if(W)W.add($);else W=new Set().add($),this.relations.set(U,W)}}getContentInternal($){return this.contents.get($)}setContent($,X){this.contents.set($,X)}deleteContent($){this.contents.delete($)}constructor($,X){if(this.a=$.between[0],this.b=$.between[1],this.cardinality=$.cardinality,!X?.externalStore)this.relations=new Map($.relations?.map(([Y,z])=>[Y,new Set(z)])),this.contents=new Map($.contents);if(this.isAType=X?.isAType??null,this.isBType=X?.isBType??null,this.isContent=X?.isContent??null,X?.makeContentKey)this.makeContentKey=X.makeContentKey;if(X?.externalStore){let Y=X.externalStore;if(this.has=(z,G)=>Y.has(z,G),this.addRelation=(z,G)=>{Y.addRelation(z,G)},this.deleteRelation=(z,G)=>{Y.deleteRelation(z,G)},this.replaceRelationsSafely=(z,G)=>{Y.replaceRelationsSafely(z,G)},this.replaceRelationsUnsafely=(z,G)=>{Y.replaceRelationsUnsafely(z,G)},this.getRelatedKeys=(z)=>Y.getRelatedKeys(z),Y.getContent)this.getContentInternal=(z)=>{return Y.getContent(z)},this.setContent=(z,G)=>{Y.setContent(z,G)},this.deleteContent=(z)=>{Y.deleteContent(z)};for(let[z,G]of $.relations??[]){let U=this.isAType?.(z)?z:void 0,W=U===void 0?z:void 0;for(let Q of G)U??=Q,W??=Q,this.addRelation(U,W)}for(let[z,G]of $.contents??[])this.setContent(z,G)}if(X?.warn)this.warn=X.warn}toJSON(){return{between:[this.a,this.b],cardinality:this.cardinality,relations:[...this.relations.entries()].map(([$,X])=>[$,[...X]]),contents:[...this.contents.entries()]}}set(...$){let X,Y,z;switch($.length){case 1:{let G=$[0];X=G[this.a],Y=G[this.b],z=void 0;break}case 2:{let G=$[0];if(typeof G==="string")[X,Y]=$;else X=G[this.a],Y=G[this.b],z=$[1];break}default:{X=$[0],Y=$[1],z=$[2];break}}switch(this.cardinality){case"1:1":{let G=this.getRelatedKey(X);if(G&&G!==Y)this.delete(X,G)}case"1:n":{let G=this.getRelatedKey(Y);if(G&&G!==X)this.delete(G,Y)}break;case"n:n":}if(z){let G=this.makeContentKey(X,Y);this.setContent(G,z)}return this.addRelation(X,Y),this}delete($,X){X=typeof X==="string"?X:$[this.b];let Y=typeof $==="string"?$:$[this.a];if(Y===void 0&&typeof X==="string"){let z=this.getRelatedKeys(X);if(z)for(let G of z)this.delete(G,X)}if(typeof Y==="string"&&X===void 0){let z=this.getRelatedKeys(Y);if(z)for(let G of z)this.delete(Y,G)}if(typeof Y==="string"&&typeof X==="string"){this.deleteRelation(Y,X);let z=this.makeContentKey(Y,X);this.deleteContent(z)}return this}getRelatedKey($){let X=this.getRelatedKeys($);if(X){if(X.size>1)this.warn?.(`${X.size} related keys were found for key "${$}": (${[...X].map((z)=>`"${z}"`).join(", ")}). Only one related key was expected.`);let Y;for(let z of X){Y=z;break}return Y}}replaceRelations($,X,Y){let z=!Array.isArray(X),G=z?Object.keys(X):X;if(Y?.reckless)this.replaceRelationsUnsafely($,G);else this.replaceRelationsSafely($,G);if(z)for(let U of G){let W=this.makeContentKey($,U),Q=X[U];this.setContent(W,Q)}return this}getContent($,X){let Y=this.makeContentKey($,X);return this.getContentInternal(Y)}getRelationEntries($){let X=$[this.a],Y=$[this.b];if(X!==void 0&&Y===void 0){let z=this.getRelatedKeys(X);if(z)return[...z].map((G)=>{return[G,this.getContent(X,G)]})}if(X===void 0&&Y!==void 0){let z=this.getRelatedKeys(Y);if(z)return[...z].map((G)=>{return[G,this.getContent(G,Y)]})}return[]}has($,X){if(X)return this.getRelatedKeys($)?.has(X)??!1;return this.relations.has($)}},g$=class{Subscriber;subscribers=new Map;subscribe($,X){return this.subscribers.set($,X),()=>{this.unsubscribe($)}}unsubscribe($){this.subscribers.delete($)}next($){let X=this.subscribers.values();for(let Y of X)Y($)}},LC=class extends g${state;constructor($){super();this.state=$}next($){this.state=$,super.next($)}};function H8($){return"epoch"in $.transactionMeta}function t6($){return"phase"in $.transactionMeta}var JC=($)=>{let X=D$($);if(!t6(X)){$.logger.warn("\uD83D\uDC1E","transaction","???","abortTransaction called outside of a transaction. This is probably a bug in AtomIO.");return}$.logger.info("\uD83E\uDE82","transaction",X.transactionMeta.update.key,"Aborting transaction"),X.parent.child=null};function U6($){return $[0].toUpperCase()+$.slice(1)}function r8($){return $.type.split("_").map(U6).join(" ")}var HW=class extends Error{constructor($,X){super(`${r8($)} ${d$($.key)} not found in store "${X.config.name}".`)}};function eU($,X,Y){return(...z)=>{let G=x6($,X);if(G)return G.run(z,Y);throw new HW(X,$)}}var OW=($)=>(X)=>$ instanceof Function?$(X):$,E7=($,X)=>{if($.valueMap.has(X.key))return $.logger.info("\uD83D\uDCD6",X.type,X.key,"reading cached value"),oC(X,$);switch(X.type){case"readonly_held_selector":case"readonly_pure_selector":case"writable_held_selector":case"writable_pure_selector":return $.logger.info("\uD83E\uDDEE",X.type,X.key,"computing value"),X.get();case"atom":case"mutable_atom":{let Y=X.default,z;if(Y instanceof Function)z=Y();else z=Y;return $.logger.info("\uD83D\uDC81","atom",X.key,"could not find cached value; using default",z),z}}},zW=($,X)=>{if($.operation.open){let Y=performance.now();return $.logger.info("\u2757",X.type,X.key,`deferring setState at T-${Y} until setState for "${$.operation.token.key}" is done`),Y}$.operation={open:!0,done:new Set,prev:new Map,time:Date.now(),token:X},$.logger.info("\u2B55",X.type,X.key,`operation start in store "${$.config.name}"${!t6($)?"":` ${$.transactionMeta.phase} "${$.transactionMeta.update.key}"`}`)},UW=($)=>{if($.operation.open)$.logger.info("\uD83D\uDD34",$.operation.token.type,$.operation.token.key,`operation done in store "${$.config.name}"`);$.operation={open:!1},$.on.operationClose.next($.operation)},NE=($,X)=>{if(!$.operation.open)return $.logger.error("\uD83D\uDC1E","unknown",X,"isDone called outside of an operation. This is probably a bug in AtomIO."),!0;return $.operation.done.has(X)},u2=($,X)=>{if(!$.operation.open){$.logger.error("\uD83D\uDC1E","unknown",X,"markDone called outside of an operation. This is probably a bug in AtomIO.");return}$.operation.done.add(X)},AC=($,X,Y)=>{switch(X.type){case"mutable_atom":$.logger.info("\uD83D\uDCE2",X.type,X.key,"is now (",Y.newValue,") subscribers:",X.subject.subscribers);break;case"atom":case"writable_pure_selector":case"readonly_pure_selector":case"writable_held_selector":case"readonly_held_selector":$.logger.info("\uD83D\uDCE2",X.type,X.key,"went (",Y.oldValue,"->",Y.newValue,") subscribers:",X.subject.subscribers)}X.subject.next(Y)};function WW($,X){let Y=D$($),z=Y.selectorAtoms.getRelatedKeys(X.key);if(Y.logger.info("\uD83E\uDDF9",X.type,X.key,z?`evicting ${z.size} states downstream:`:"no downstream states",z??"to evict"),z){if(Y.operation.open)Y.logger.info("\uD83E\uDDF9",X.type,X.key,`[ ${[...Y.operation.done].join(", ")} ] already done`);for(let G of z){if(NE(Y,G))continue;_E(G,Y),u2(Y,G)}}}function KC($,X){let Y=D$($),z=Y.selectorGraph.getRelationEntries({upstreamSelectorKey:X.key}).filter(([G,{source:U}])=>U===X.key);for(let[G]of z){if(NE(Y,G))continue;_E(G,Y),u2(Y,G)}}var _C=($,X,Y)=>{let z=E7($,X),G=z;if(X.type==="mutable_atom"&&t6($)){let{parent:W}=$;G=ZW($,X,W)}if(G=OW(Y)(G),$.logger.info("\uD83D\uDCDD","atom",X.key,"set to",G),G=s1($,X.key,G,X.subject),tC($,X.key))aC($,X.key);u2($,X.key),WW($,X);let U={oldValue:z,newValue:G};if(!t6($)){AC($,X,U);return}if($.on.transactionApplying.state===null){let{key:W}=X;if(nC(U.newValue))return;let Q={type:"atom_update",key:W,...U};if(X.family)Q.family=X.family;$.transactionMeta.update.updates.push(Q),$.logger.info("\uD83D\uDCC1","atom",W,"stowed (",U.oldValue,"->",U.newValue,")")}else if(X.key.startsWith("*")){let W=X.key.slice(1),Q=$.atoms.get(W),Z=$.valueMap.get(W);if(Q.type==="mutable_atom"&&t6($)){let{parent:O}=$;Z=ZW($,Q,O)}if(Z.do(U.newValue)===null)WW($,Q)}},EE=($,X,Y)=>{switch(X.type){case"atom":case"mutable_atom":_C($,X,Y);break;case"writable_pure_selector":case"writable_held_selector":X.set(Y);break}};function c2($,X,Y){let z={key:X.key,type:"atom_family"},G=$.families.get(X.key);if(G)$.logger.error("\u2757","atom_family",X.key,`Overwriting an existing ${r8(G)} "${G.key}" in store "${$.config.name}". You can safely ignore this warning if it is due to hot module replacement.`);let U=new g$,Q=Object.assign((Z)=>{let H=d$(Z),O={key:X.key,subKey:H},w=`${X.key}(${H})`,V=D$($),D=X.default,N={key:w,default:D instanceof Function?D(Z):D};if(X.effects)N.effects=X.effects(Z);let F=o8(V,N,O);return U.next({type:"state_creation",token:F}),F},z,{subject:U,install:(Z)=>c2(Z,X),internalRoles:Y});return $.families.set(X.key,Q),$.defaults.set(X.key,X.default),z}function zE($,X){if("mutable"in X)return LW($,X);return c2($,X)}var wW=($,X)=>D$($).atoms.has(X),qC=($,X)=>D$($).writableSelectors.has(X),TC=($,X)=>D$($).readonlySelectors.has(X),RC=($,X)=>wW($,X)||qC($,X)||TC($,X),QW=($,X)=>{return D$($).selectorGraph.getRelationEntries({downstreamSelectorKey:X}).filter(([z,{source:G}])=>G!==X).map(([z,{source:G}])=>G).filter((z)=>RC($,z))},FE=($,X,Y)=>{let z=[],G=QW($,X);while(G.length>0){let U=G.shift();if(Y.has(U))continue;if(Y.add(U),!wW($,U))G.push(...QW($,U));else if(!z.includes(U))z.push(U)}return z},PC=($,X)=>{let Y=$.key,z=QW(X,Y),G=new Set;return z.flatMap((U)=>wW(X,U)?U:FE(X,U,G))},vC=($,X,Y,z,G)=>{let U=D$($),{type:W,key:Q}=z;if(W==="atom"||W==="mutable_atom")U.selectorAtoms.set({selectorKey:Y,atomKey:Q}),$.logger.info("\uD83D\uDD0D",X,Y,`discovers root atom "${Q}"`);else{let Z=FE($,Q,G);$.logger.info("\uD83D\uDD0D",X,Y,`discovers root atoms: [ ${Z.map((H)=>`"${H}"`).join(", ")} ]`);for(let H of Z)U.selectorAtoms=U.selectorAtoms.set({selectorKey:Y,atomKey:H})}G.add(Q)},F7=($,X,Y,z)=>({get:(...G)=>{let U=D$($),W;if(G.length===2){let[O,w]=G;W=p$($,O,w)}else[W]=G;let Q=x6($,W),Z=E7($,Q),H=W.key;return $.logger.info("\uD83D\uDD0C",X,Y,`registers dependency ( "${H}" =`,Z,")"),U.selectorGraph.set({upstreamSelectorKey:H,downstreamSelectorKey:Y},{source:W.key}),vC($,X,Y,W,z),Z},set:(...G)=>{let U,W;if(G.length===2)U=G[0],W=G[1];else{let H=G[0],O=G[1];W=G[2],U=p$($,H,O)}let Q=D$($),Z=x6(Q,U);EE(Q,Z,W)},find:(...G)=>p$($,...G),json:(G)=>n8($,G)}),VW=($,X,Y)=>{let z=D$($),G=new g$,U=new Set,{key:W,const:Q}=X,Z="readonly_held_selector",{get:H,find:O,json:w}=F7(z,"readonly_held_selector",W,U),D={...X,type:"readonly_held_selector",subject:G,install:(F)=>VW(F,X,Y),get:()=>{return X.get({get:H,find:O,json:w},Q),s1(D$($),W,Q,G),U.clear(),Q},...Y&&{family:Y}};z.readonlySelectors.set(W,D),$.logger.info("\u2728","readonly_held_selector",W,"=",Q);let N={key:W,type:"readonly_held_selector"};if(Y)N.family=Y;return N},DW=($,X,Y)=>{let z=D$($),G=new g$,U=new Set,W=X.key,Q="readonly_pure_selector",{get:Z,find:H,json:O}=F7(z,"readonly_pure_selector",W,U),w=()=>{let F=X.get({get:Z,find:H,json:O});return s1(D$($),W,F,G),U.clear(),F},V={...X,type:"readonly_pure_selector",subject:G,install:(F)=>DW(F,X,Y),get:w,...Y&&{family:Y}};z.readonlySelectors.set(W,V);let D=w();$.logger.info("\u2728","readonly_pure_selector",W,"=",D);let N={key:W,type:"readonly_pure_selector"};if(Y)N.family=Y;return N},NW=($,X,Y)=>{let z=D$($),G=new g$,U=new Set,{key:W,const:Q}=X,Z="writable_held_selector",H=F7(z,"writable_held_selector",W,U),{find:O,get:w,json:V}=H,D={find:O,get:w,json:V},N=(R=X.get,_=D$($))=>{return R(D,Q),s1(_,W,Q,G),U.clear(),Q},L={...X,type:"writable_held_selector",subject:G,install:(R)=>NW(R,X,Y),get:N,set:(R)=>{let _=D$($),v=N(X.get,_),x=OW(R)(v);if($.logger.info("\uD83D\uDCDD","writable_held_selector",W,"set (",v,"->",x,")"),s1(_,W,x,G),u2(_,W),H8(_))G.next({newValue:x,oldValue:v});X.set(H,x)},...Y&&{family:Y}};z.writableSelectors.set(W,L);let K=N();$.logger.info("\u2728","writable_held_selector",W,"=",K);let q={key:W,type:"writable_held_selector"};if(Y)q.family=Y;return q},EW=($,X,Y)=>{let z=D$($),G=new g$,U=new Set,W=X.key,Q="writable_pure_selector",Z=F7(z,"writable_pure_selector",W,U),{find:H,get:O,json:w}=Z,V={find:H,get:O,json:w},D=(q=X.get,R=D$($))=>{let _=q(V);return s1(R,W,_,G),U.clear(),_},F={...X,type:"writable_pure_selector",subject:G,install:(q)=>EW(q,X,Y),get:D,set:(q)=>{let R=D$($),_=D(X.get,R),v=OW(q)(_);if($.logger.info("\uD83D\uDCDD","writable_pure_selector",W,"set (",_,"->",v,")"),s1(R,X.key,v,G),u2(R,X.key),H8(R))G.next({newValue:v,oldValue:_});X.set(Z,v)},...Y&&{family:Y}};z.writableSelectors.set(W,F);let L=D();$.logger.info("\u2728",F.type,F.key,"=",L);let K={key:W,type:"writable_pure_selector"};if(Y)K.family=Y;return K};function oX($,X){let Y="set"in X,z="const"in X;if(z&&Y){let U=NW($,X,void 0);return $.on.selectorCreation.next(U),U}if(z){let U=VW($,X,void 0);return $.on.selectorCreation.next(U),U}if(Y){let U=EW($,X,void 0);return $.on.selectorCreation.next(U),U}let G=DW($,X,void 0);return $.on.selectorCreation.next(G),G}function CC($,X){let Y=D$($),{key:z,type:G}=X,U=x6(Y,X);if(!U.family)$.logger.error("\u274C",G,z,"Standalone selectors cannot be disposed.");else{if(Y.molecules.get(U.family.subKey))Y.moleculeData.delete(U.family.subKey,U.family.key);let Q;switch(X.type){case"writable_held_selector":Y.writableSelectors.delete(z),Q={key:U.family.key,type:"writable_held_selector_family"},x6($,Q).subject.next({type:"state_disposal",subType:"selector",token:X});break;case"writable_pure_selector":Y.writableSelectors.delete(z),Q={key:U.family.key,type:"writable_pure_selector_family"},x6($,Q).subject.next({type:"state_disposal",subType:"selector",token:X});break;case"readonly_held_selector":Y.readonlySelectors.delete(z),Q={key:U.family.key,type:"readonly_held_selector_family"},x6($,Q).subject.next({type:"state_disposal",subType:"selector",token:X});break;case"readonly_pure_selector":Y.readonlySelectors.delete(z),Q={key:U.family.key,type:"readonly_pure_selector_family"},x6($,Q).subject.next({type:"state_disposal",subType:"selector",token:X});break}if(Y.valueMap.delete(z),Y.selectorAtoms.delete(z),Y.selectorGraph.delete(z),$.logger.info("\uD83D\uDD25",X.type,z,"deleted"),t6(Y)&&Y.transactionMeta.phase==="building")Y.transactionMeta.update.updates.push({type:"state_disposal",subType:"selector",token:X});else $.on.selectorDisposal.next(X)}}function i8($,X,Y){let z=X.key,G="readonly_pure_selector_family",U={key:z,type:"readonly_pure_selector_family"},W=$.families.get(z);if(W)$.logger.error("\u2757","readonly_pure_selector_family",z,`Overwriting an existing ${r8(W)} "${W.key}" in store "${$.config.name}". You can safely ignore this warning if it is due to hot module replacement.`);let Q=new g$,H=Object.assign((O)=>{let w=d$(O),V={key:z,subKey:w},D=`${z}(${w})`,N=D$($),F=DW(N,{key:D,get:X.get(O)},V);return Q.next({type:"state_creation",token:F}),F},U,{internalRoles:Y,subject:Q,install:(O)=>i8(O,X),default:(O)=>{return X.get(O)({get:(...V)=>b1($,...V),find:(...V)=>p$($,...V),json:(V)=>n8($,V)})}});return $.families.set(z,H),U}function ME($,X,Y){let z=X.key,G="readonly_held_selector_family",U={key:z,type:"readonly_held_selector_family"},W=$.families.get(z);if(W)$.logger.error("\u2757","readonly_held_selector_family",z,`Overwriting an existing ${r8(W)} "${W.key}" in store "${$.config.name}". You can safely ignore this warning if it is due to hot module replacement.`);let Q=new g$,H=Object.assign((O)=>{let w=d$(O),V={key:z,subKey:w},D=`${z}(${w})`,N=D$($),F=VW(N,{key:D,const:X.const(O),get:X.get(O)},V);return Q.next({type:"state_creation",token:F}),F},U,{internalRoles:Y,subject:Q,install:(O)=>ME(O,X),default:X.const});return $.families.set(z,H),U}function LE($,X,Y){let z=X.key,G="writable_held_selector_family",U={key:z,type:"writable_held_selector_family"},W=$.families.get(z);if(W)$.logger.error("\u2757","writable_held_selector_family",z,`Overwriting an existing ${r8(W)} "${W.key}" in store "${$.config.name}". You can safely ignore this warning if it is due to hot module replacement.`);let Q=new g$,H=Object.assign((O)=>{let w=d$(O),V={key:z,subKey:w},D=`${z}(${w})`,N=D$($),F=NW(N,{key:D,const:X.const(O),get:X.get(O),set:X.set(O)},V);return Q.next({type:"state_creation",token:F}),F},U,{internalRoles:Y,subject:Q,install:(O)=>LE(O,X),default:X.const});return $.families.set(z,H),U}function V7($,X,Y){let z=X.key,G="writable_pure_selector_family",U={key:z,type:"writable_pure_selector_family"},W=$.families.get(z);if(W)$.logger.error("\u2757","writable_pure_selector_family",z,`Overwriting an existing ${r8(W)} "${W.key}" in store "${$.config.name}". You can safely ignore this warning if it is due to hot module replacement.`);let Q=new g$,H=Object.assign((O)=>{let w=d$(O),V={key:z,subKey:w},D=`${z}(${w})`,N=D$($),F=EW(N,{key:D,get:X.get(O),set:X.set(O)},V);return Q.next({type:"state_creation",token:F}),F},U,{internalRoles:Y,subject:Q,install:(O)=>V7(O,X),default:(O)=>{return X.get(O)({get:(...V)=>b1($,...V),find:(...V)=>p$($,...V),json:(V)=>n8($,V)})}});return $.families.set(z,H),U}function $W($,X){let Y="set"in X,z="const"in X;if(z&&Y)return LE($,X,void 0);if(z)return ME($,X,void 0);if(Y)return V7($,X);return i8($,X)}function jC($,X,Y){let z=$.families.get(X.key);if(z===void 0)throw new HW(X,$);let G=z(Y),U=D$($);if(G.family){if(H8(U))switch(G.type){case"atom":case"mutable_atom":$.on.atomCreation.next(G);break;case"writable_pure_selector":case"readonly_pure_selector":case"writable_held_selector":case"readonly_held_selector":$.on.selectorCreation.next(G);break}else if(t6(U)&&U.on.transactionApplying.state===null)U.transactionMeta.update.updates.push({type:"state_creation",token:G})}return G}function BC($,X,Y){let z=d$(Y),G=`${X.key}(${z})`,U=D$($),W;switch(X.type){case"atom_family":case"mutable_atom_family":W=U.atoms.get(G);break;case"writable_held_selector_family":case"writable_pure_selector_family":W=U.writableSelectors.get(G);break;case"readonly_held_selector_family":case"readonly_pure_selector_family":W=U.readonlySelectors.get(G);break}if(W)return L0(W);return W}function p$($,X,Y){let z=BC($,X,Y);if(z)return z;let G=d$(Y),U=$.molecules.get(G);if(!U&&$.config.lifespan==="immortal"){let W=MC(X,Y);return $.logger.error("\u274C",W.type,W.key,`was not found in store "${$.config.name}"; returned a counterfeit token.`),W}if(z=jC($,X,Y),U)D$($).moleculeData.set(G,X.key);return z}function aX($,...X){let Y;if(X.length===1)Y=X[0];else{let z=X[0],G=X[1];Y=p$($,z,G)}try{x6($,Y)}catch(z){$.logger.error("\u274C",Y.type,Y.key,`could not be disposed because it was not found in the store "${$.config.name}".`);return}switch(Y.type){case"atom":case"mutable_atom":TE($,Y);break;case"writable_pure_selector":case"readonly_pure_selector":case"writable_held_selector":case"readonly_held_selector":CC($,Y);break}}function IC($,X){if(X.family){let Y=$.families.get(X.family.key);if(Y)return Y}}function Y1($,...X){let Y,z,G,U;if(X.length===2){if(Y=X[0],U=X[1],z=IC($,Y)??null,z)G=Y.family?g4(Y.family.subKey):null,Y=p$($,z,G)}else z=X[0],G=X[1],U=X[2],Y=p$($,z,G);if("counterfeit"in Y&&"family"in Y){let Z=Y.family.subKey,H=$.disposalTraces.buffer.find((O)=>O?.key===Z);$.logger.error("\u274C",Y.type,Y.key,`could not be set because it was not found in the store "${$.config.name}".`,H?`This state was previously disposed:
3
+ var WC=Object.create;var{getPrototypeOf:QC,defineProperty:tU,getOwnPropertyNames:ZC}=Object;var HC=Object.prototype.hasOwnProperty;var OC=($,X,Y)=>{Y=$!=null?WC(QC($)):{};let z=X||!$||!$.__esModule?tU(Y,"default",{value:$,enumerable:!0}):Y;for(let G of ZC($))if(!HC.call(z,G))tU(z,G,{get:()=>$[G],enumerable:!0});return z};var wC=($,X)=>()=>(X||$((X={exports:{}}).exports,X),X.exports);var Z8=($,X)=>{for(var Y in X)tU($,Y,{get:X[Y],enumerable:!0,configurable:!0,set:(z)=>X[Y]=()=>z})};var By=($,X)=>()=>($&&(X=$($=0)),X);var aN=import.meta.require;var oF=wC((sc,nF)=>{var vG=aN("os"),CG=aN("path");function rF($){let X=process.env.XDG_CACHE_HOME||CG.join(vG.homedir(),".cache");return CG.join(X,$)}function Xx($){return CG.join(vG.homedir(),"Library","Caches",$)}function Yx($){let X=process.env.LOCALAPPDATA||CG.join(vG.homedir(),"AppData","Local");return CG.join(X,$,"Cache")}var Gx=function(){switch(vG.platform()){case"darwin":return Xx;case"win32":return Yx;case"aix":case"android":case"freebsd":case"linux":case"netbsd":case"openbsd":case"sunos":return rF;default:return console.error(`(node:${process.pid}) [cachedir] Warning: the platform "${vG.platform()}" is not currently supported by node-cachedir, falling back to "posix". Please file an issue with your platform here: https://github.com/LinusU/node-cachedir/issues/new`),rF}}();nF.exports=function $(X){if(typeof X!=="string")throw new TypeError("id is not a string");if(X.length===0)throw new Error("id cannot be empty");if(/[^0-9a-zA-Z-]/.test(X))throw new Error("id cannot contain special characters");return Gx(X)}});var sN=($,X,Y=R6.STORE)=>{return oX(Y,{key:`${$.key}:JSON`,get:({get:z})=>X.toJson(z($)),set:({set:z},G)=>{z($,X.fromJson(G))}})};function eN($,X,Y){return V7($,{key:`${X.key}:JSON`,get:(G)=>({get:U})=>{let W=U(X,G);return Y.toJson(W)},set:(G)=>({set:U},W)=>{U(X,G,Y.fromJson(W))}},["mutable","json"])}var g4=($)=>JSON.parse($),d$=($)=>JSON.stringify($),Sy=[Array.prototype,Boolean.prototype,Number.prototype,Object.prototype,String.prototype];function tX($){return ZE(R6.STORE,$)}function f2($){return zE(R6.STORE,$)}function sU(...$){if($.length===2)return b1(R6.STORE,...$);return b1(R6.STORE,...$)}function D7($,X,Y=R6.STORE){return Y.joins.set($.key,new YW($,X,Y)),{key:$.key,type:"join",a:$.between[0],b:$.between[1],cardinality:$.cardinality}}function $E($){return OE($,R6.STORE)}var aU=($)=>(X,Y,z,G,...U)=>{console[$](`${X} ${Y} "${z}" ${G}`,...U)},VC={error:aU("error"),info:aU("info"),warn:aU("warn")},XE=class{logLevel;filter;logger;constructor($,X,Y=VC){this.logLevel=$,this.filter=X,this.logger=Y}error=(...$)=>{let X=this.filter?.(...$)??!0;if(this.logLevel!==null){if(X===!0)this.logger.error(...$);else if(X!==!1)this.logger.error(...X)}};info=(...$)=>{let X=this.filter?.(...$)??!0;if(this.logLevel==="info"){if(X===!0)this.logger.info(...$);else if(X!==!1)this.logger.info(...X)}};warn=(...$)=>{let X=this.filter?.(...$)??!0;if(this.logLevel!=="error"&&this.logLevel!==null){if(X===!0)this.logger.warn(...$);else if(X!==!1)this.logger.warn(...X)}}};var DC=class{store;constructor($=R6.STORE){this.store=$,UE("root",$)}allocate($,X,Y){return sX(this.store,$,X,Y)}fuse($,X,Y){return WE(this.store,$,X,Y)}deallocate($){eX(this.store,$)}claim($,X,Y){return g2(this.store,$,X,Y)}},YE=class{store;realm;constructor($=R6.STORE){this.store=$,this.realm=new DC($)}allocate($,X,Y){sX(this.store,$,X,Y)}deallocate($){eX(this.store,$)}claim($,X,Y){g2(this.store,$,X,Y)}};function N7($){return $W(R6.STORE,$)}function h2($){return XW(R6.STORE,$)}var y4=class $ extends Set{mode="record";subject=new g$;cacheLimit=0;cache=[];cacheIdx=-1;cacheUpdateNumber=-1;constructor(X,Y=0){super(X);if(X instanceof $)this.parent=X,this.cacheUpdateNumber=X.cacheUpdateNumber;if(Y)this.cacheLimit=Y,this.cache=new Array(Y),this.subscribe("auto cache",(z)=>{this.cacheIdx++,this.cacheIdx%=this.cacheLimit,this.cache[this.cacheIdx]=z})}toJSON(){return{members:[...this],cache:this.cache,cacheLimit:this.cacheLimit,cacheIdx:this.cacheIdx,cacheUpdateNumber:this.cacheUpdateNumber}}static fromJSON(X){let Y=new $(X.members,X.cacheLimit);return Y.cache=X.cache,Y.cacheIdx=X.cacheIdx,Y.cacheUpdateNumber=X.cacheUpdateNumber,Y}add(X){let Y=super.add(X);if(this.mode==="record")this.cacheUpdateNumber++,this.emit(`add:${d$(X)}`);return Y}clear(){let X=this.mode==="record"?[...this]:null;if(super.clear(),X)this.cacheUpdateNumber++,this.emit(`clear:${JSON.stringify(X)}`)}delete(X){let Y=super.delete(X);if(this.mode==="record")this.cacheUpdateNumber++,this.emit(`del:${d$(X)}`);return Y}parent=null;child=null;transactionUpdates=null;transaction(X){this.mode="transaction",this.transactionUpdates=[],this.child=new $(this);let Y=this.child._subscribe("transaction",(z)=>{this.transactionUpdates?.push(z)});try{if(X(this.child)){for(let G of this.transactionUpdates)this.doStep(G);this.cacheUpdateNumber++,this.emit(`tx:${this.transactionUpdates.join(";")}`)}}catch(z){throw console.warn("Did not apply transaction to SetRTX; this error was thrown:",z),z}finally{Y(),this.child=null,this.transactionUpdates=null,this.mode="record"}}_subscribe(X,Y){return this.subject.subscribe(X,Y)}subscribe(X,Y){return this.subject.subscribe(X,(z)=>{Y(`${this.cacheUpdateNumber}=${z}`)})}emit(X){this.subject.next(X)}doStep(X){let Y=X.indexOf(":"),z=X.substring(0,Y),G=X.substring(Y+1);switch(z){case"add":this.add(JSON.parse(G));break;case"clear":this.clear();break;case"del":this.delete(JSON.parse(G));break;case"tx":for(let U of G.split(";"))this.doStep(U)}}getUpdateNumber(X){let Y=X.indexOf("=");return Number(X.substring(0,Y))}do(X){let Y=X.indexOf("="),z=Number(X.substring(0,Y)),G=z-this.cacheUpdateNumber;if(G>0){if(G===1){this.mode="playback";let W=X.substring(Y+1);return this.doStep(W),this.mode="record",this.cacheUpdateNumber=z,null}return this.cacheUpdateNumber+1}if(Math.abs(G)<this.cacheLimit){let W=this.cacheIdx+G;if(this.cache[W]===X)return null;this.mode="playback";let Z=!1;while(!Z){this.cacheIdx%=this.cacheLimit;let O=this.cache[this.cacheIdx];if(this.cacheIdx--,!O)return"OUT_OF_RANGE";this.undo(O),Z=this.cacheIdx===W-1}let H=X.substring(Y+1);return this.doStep(H),this.mode="record",this.cacheUpdateNumber=z,null}return"OUT_OF_RANGE"}undoStep(X){let Y=X.indexOf(":"),z=X.substring(0,Y),G=X.substring(Y+1);switch(z){case"add":this.delete(JSON.parse(G));break;case"del":this.add(JSON.parse(G));break;case"clear":{let U=JSON.parse(G);for(let W of U)this.add(W);break}case"tx":{let U=G.split(";");for(let W=U.length-1;W>=0;W--)this.undoStep(U[W])}}}undo(X){let Y=X.indexOf("=");if(Number(X.substring(0,Y))===this.cacheUpdateNumber){this.mode="playback";let G=X.substring(Y+1);return this.undoStep(G),this.mode="record",this.cacheUpdateNumber--,null}return this.cacheUpdateNumber}};function GE($=Math.random){return $().toString(36).slice(2)}var GW=class extends Promise{fate;resolve;reject;done=!1;constructor($){let X,Y;super((z,G)=>{X=z,Y=G});this.resolve=X,this.reject=Y,this.use($ instanceof Promise?$:new Promise($))}pass($,X){if($===this.fate)this.resolve(X),this.done=!0}fail($,X){if($===this.fate)this.reject(X),this.done=!0}use($){if($ instanceof Promise){let X=$;this.fate=X,X.then((Y)=>{this.pass(X,Y)},(Y)=>{this.fail(X,Y)})}else this.resolve($),this.fate=void 0}};function D$($){while($.child!==null)$=$.child;return $}var EC=class ${_buffer;_index=0;constructor(X){let Y;if(typeof X==="number")Y=X;else Y=X.length;this._buffer=Array.from({length:Y})}get buffer(){return this._buffer}get index(){return this._index}add(X){this._buffer[this._index]=X,this._index=(this._index+1)%this._buffer.length}copy(){let X=new $([...this._buffer]);return X._index=this._index,X}},FC={atom_family:"atom",molecule_family:"molecule",mutable_atom_family:"mutable_atom",readonly_held_selector_family:"readonly_held_selector",readonly_pure_selector_family:"readonly_pure_selector",writable_held_selector_family:"writable_held_selector",writable_pure_selector_family:"writable_pure_selector"};function MC($,X){let Y=d$(X),z=`${$.key}(${Y})`,G=FC[$.type],U={key:z,type:G};return Object.assign(U,{family:{key:$.key,subKey:Y}}),Object.assign(U,{counterfeit:!0}),U}function L0($){let X={key:$.key,type:$.type};if("family"in $)X.family=$.family;return X}var E4=class{a;b;cardinality;relations=new Map;contents=new Map;isAType;isBType;isContent;makeContentKey=($,X)=>`${$}:${X}`;warn;getRelatedKeys($){return this.relations.get($)}addRelation($,X){let Y=this.relations.get($),z=this.relations.get(X);if(Y)Y.add(X);else Y=new Set([X]),this.relations.set($,Y);if(z)z.add($);else z=new Set([$]),this.relations.set(X,z)}deleteRelation($,X){let Y=this.relations.get($);if(Y){if(Y.delete(X),Y.size===0)this.relations.delete($);let z=this.relations.get(X);if(z){if(z.delete($),z.size===0)this.relations.delete(X)}}}replaceRelationsUnsafely($,X){this.relations.set($,new Set(X));for(let Y of X){let z=new Set().add($);this.relations.set(Y,z)}}replaceRelationsSafely($,X){let Y=this.relations.get($),z=this.isAType?.($)?$:void 0,G=z===void 0?$:void 0;if(Y)for(let U of Y){z??=U,G??=U;let W=this.relations.get(U);if(W){if(W.size===1)this.relations.delete(U);else W.delete($);this.contents.delete(this.makeContentKey(z,G))}}this.relations.set($,new Set(X));for(let U of X){let W=this.relations.get(U);if(W)W.add($);else W=new Set().add($),this.relations.set(U,W)}}getContentInternal($){return this.contents.get($)}setContent($,X){this.contents.set($,X)}deleteContent($){this.contents.delete($)}constructor($,X){if(this.a=$.between[0],this.b=$.between[1],this.cardinality=$.cardinality,!X?.externalStore)this.relations=new Map($.relations?.map(([Y,z])=>[Y,new Set(z)])),this.contents=new Map($.contents);if(this.isAType=X?.isAType??null,this.isBType=X?.isBType??null,this.isContent=X?.isContent??null,X?.makeContentKey)this.makeContentKey=X.makeContentKey;if(X?.externalStore){let Y=X.externalStore;if(this.has=(z,G)=>Y.has(z,G),this.addRelation=(z,G)=>{Y.addRelation(z,G)},this.deleteRelation=(z,G)=>{Y.deleteRelation(z,G)},this.replaceRelationsSafely=(z,G)=>{Y.replaceRelationsSafely(z,G)},this.replaceRelationsUnsafely=(z,G)=>{Y.replaceRelationsUnsafely(z,G)},this.getRelatedKeys=(z)=>Y.getRelatedKeys(z),Y.getContent)this.getContentInternal=(z)=>{return Y.getContent(z)},this.setContent=(z,G)=>{Y.setContent(z,G)},this.deleteContent=(z)=>{Y.deleteContent(z)};for(let[z,G]of $.relations??[]){let U=this.isAType?.(z)?z:void 0,W=U===void 0?z:void 0;for(let Q of G)U??=Q,W??=Q,this.addRelation(U,W)}for(let[z,G]of $.contents??[])this.setContent(z,G)}if(X?.warn)this.warn=X.warn}toJSON(){return{between:[this.a,this.b],cardinality:this.cardinality,relations:[...this.relations.entries()].map(([$,X])=>[$,[...X]]),contents:[...this.contents.entries()]}}set(...$){let X,Y,z;switch($.length){case 1:{let G=$[0];X=G[this.a],Y=G[this.b],z=void 0;break}case 2:{let G=$[0];if(typeof G==="string")[X,Y]=$;else X=G[this.a],Y=G[this.b],z=$[1];break}default:{X=$[0],Y=$[1],z=$[2];break}}switch(this.cardinality){case"1:1":{let G=this.getRelatedKey(X);if(G&&G!==Y)this.delete(X,G)}case"1:n":{let G=this.getRelatedKey(Y);if(G&&G!==X)this.delete(G,Y)}break;case"n:n":}if(z){let G=this.makeContentKey(X,Y);this.setContent(G,z)}return this.addRelation(X,Y),this}delete($,X){X=typeof X==="string"?X:$[this.b];let Y=typeof $==="string"?$:$[this.a];if(Y===void 0&&typeof X==="string"){let z=this.getRelatedKeys(X);if(z)for(let G of z)this.delete(G,X)}if(typeof Y==="string"&&X===void 0){let z=this.getRelatedKeys(Y);if(z)for(let G of z)this.delete(Y,G)}if(typeof Y==="string"&&typeof X==="string"){this.deleteRelation(Y,X);let z=this.makeContentKey(Y,X);this.deleteContent(z)}return this}getRelatedKey($){let X=this.getRelatedKeys($);if(X){if(X.size>1)this.warn?.(`${X.size} related keys were found for key "${$}": (${[...X].map((z)=>`"${z}"`).join(", ")}). Only one related key was expected.`);let Y;for(let z of X){Y=z;break}return Y}}replaceRelations($,X,Y){let z=!Array.isArray(X),G=z?Object.keys(X):X;if(Y?.reckless)this.replaceRelationsUnsafely($,G);else this.replaceRelationsSafely($,G);if(z)for(let U of G){let W=this.makeContentKey($,U),Q=X[U];this.setContent(W,Q)}return this}getContent($,X){let Y=this.makeContentKey($,X);return this.getContentInternal(Y)}getRelationEntries($){let X=$[this.a],Y=$[this.b];if(X!==void 0&&Y===void 0){let z=this.getRelatedKeys(X);if(z)return[...z].map((G)=>{return[G,this.getContent(X,G)]})}if(X===void 0&&Y!==void 0){let z=this.getRelatedKeys(Y);if(z)return[...z].map((G)=>{return[G,this.getContent(G,Y)]})}return[]}has($,X){if(X)return this.getRelatedKeys($)?.has(X)??!1;return this.relations.has($)}},g$=class{Subscriber;subscribers=new Map;subscribe($,X){return this.subscribers.set($,X),()=>{this.unsubscribe($)}}unsubscribe($){this.subscribers.delete($)}next($){let X=this.subscribers.values();for(let Y of X)Y($)}},LC=class extends g${state;constructor($){super();this.state=$}next($){this.state=$,super.next($)}};function H8($){return"epoch"in $.transactionMeta}function t6($){return"phase"in $.transactionMeta}var JC=($)=>{let X=D$($);if(!t6(X)){$.logger.warn("\uD83D\uDC1E","transaction","???","abortTransaction called outside of a transaction. This is probably a bug in AtomIO.");return}$.logger.info("\uD83E\uDE82","transaction",X.transactionMeta.update.key,"Aborting transaction"),X.parent.child=null};function U6($){return $[0].toUpperCase()+$.slice(1)}function r8($){return $.type.split("_").map(U6).join(" ")}var HW=class extends Error{constructor($,X){super(`${r8($)} ${d$($.key)} not found in store "${X.config.name}".`)}};function eU($,X,Y){return(...z)=>{let G=x6($,X);if(G)return G.run(z,Y);throw new HW(X,$)}}var OW=($)=>(X)=>$ instanceof Function?$(X):$,E7=($,X)=>{if($.valueMap.has(X.key))return $.logger.info("\uD83D\uDCD6",X.type,X.key,"reading cached value"),oC(X,$);switch(X.type){case"readonly_held_selector":case"readonly_pure_selector":case"writable_held_selector":case"writable_pure_selector":return $.logger.info("\uD83E\uDDEE",X.type,X.key,"computing value"),X.get();case"atom":case"mutable_atom":{let Y=X.default,z;if(Y instanceof Function)z=Y();else z=Y;return $.logger.info("\uD83D\uDC81","atom",X.key,"could not find cached value; using default",z),z}}},zW=($,X)=>{if($.operation.open){let Y=performance.now();return $.logger.info("\u2757",X.type,X.key,`deferring setState at T-${Y} until setState for "${$.operation.token.key}" is done`),Y}$.operation={open:!0,done:new Set,prev:new Map,time:Date.now(),token:X},$.logger.info("\u2B55",X.type,X.key,`operation start in store "${$.config.name}"${!t6($)?"":` ${$.transactionMeta.phase} "${$.transactionMeta.update.key}"`}`)},UW=($)=>{if($.operation.open)$.logger.info("\uD83D\uDD34",$.operation.token.type,$.operation.token.key,`operation done in store "${$.config.name}"`);$.operation={open:!1},$.on.operationClose.next($.operation)},NE=($,X)=>{if(!$.operation.open)return $.logger.error("\uD83D\uDC1E","unknown",X,"isDone called outside of an operation. This is probably a bug in AtomIO."),!0;return $.operation.done.has(X)},u2=($,X)=>{if(!$.operation.open){$.logger.error("\uD83D\uDC1E","unknown",X,"markDone called outside of an operation. This is probably a bug in AtomIO.");return}$.operation.done.add(X)},AC=($,X,Y)=>{switch(X.type){case"mutable_atom":$.logger.info("\uD83D\uDCE2",X.type,X.key,"is now (",Y.newValue,") subscribers:",X.subject.subscribers);break;case"atom":case"writable_pure_selector":case"readonly_pure_selector":case"writable_held_selector":case"readonly_held_selector":$.logger.info("\uD83D\uDCE2",X.type,X.key,"went (",Y.oldValue,"->",Y.newValue,") subscribers:",X.subject.subscribers)}X.subject.next(Y)};function WW($,X){let Y=D$($),z=Y.selectorAtoms.getRelatedKeys(X.key);if(Y.logger.info("\uD83E\uDDF9",X.type,X.key,z?`evicting ${z.size} states downstream:`:"no downstream states",z??"to evict"),z){if(Y.operation.open)Y.logger.info("\uD83E\uDDF9",X.type,X.key,`[ ${[...Y.operation.done].join(", ")} ] already done`);for(let G of z){if(NE(Y,G))continue;_E(G,Y),u2(Y,G)}}}function KC($,X){let Y=D$($),z=Y.selectorGraph.getRelationEntries({upstreamSelectorKey:X.key}).filter(([G,{source:U}])=>U===X.key);for(let[G]of z){if(NE(Y,G))continue;_E(G,Y),u2(Y,G)}}var _C=($,X,Y)=>{let z=E7($,X),G=z;if(X.type==="mutable_atom"&&t6($)){let{parent:W}=$;G=ZW($,X,W)}if(G=OW(Y)(G),$.logger.info("\uD83D\uDCDD","atom",X.key,"set to",G),G=s1($,X.key,G,X.subject),tC($,X.key))aC($,X.key);u2($,X.key),WW($,X);let U={oldValue:z,newValue:G};if(!t6($)){AC($,X,U);return}if($.on.transactionApplying.state===null){let{key:W}=X;if(nC(U.newValue))return;let Q={type:"atom_update",key:W,...U};if(X.family)Q.family=X.family;$.transactionMeta.update.updates.push(Q),$.logger.info("\uD83D\uDCC1","atom",W,"stowed (",U.oldValue,"->",U.newValue,")")}else if(X.key.startsWith("*")){let W=X.key.slice(1),Q=$.atoms.get(W),Z=$.valueMap.get(W);if(Q.type==="mutable_atom"&&t6($)){let{parent:O}=$;Z=ZW($,Q,O)}if(Z.do(U.newValue)===null)WW($,Q)}},EE=($,X,Y)=>{switch(X.type){case"atom":case"mutable_atom":_C($,X,Y);break;case"writable_pure_selector":case"writable_held_selector":X.set(Y);break}};function c2($,X,Y){let z={key:X.key,type:"atom_family"},G=$.families.get(X.key);if(G)$.logger.error("\u2757","atom_family",X.key,`Overwriting an existing ${r8(G)} "${G.key}" in store "${$.config.name}". You can safely ignore this warning if it is due to hot module replacement.`);let U=new g$,Q=Object.assign((Z)=>{let H=d$(Z),O={key:X.key,subKey:H},w=`${X.key}(${H})`,V=D$($),D=X.default,N={key:w,default:D instanceof Function?D(Z):D};if(X.effects)N.effects=X.effects(Z);let F=o8(V,N,O);return U.next({type:"state_creation",token:F}),F},z,{subject:U,install:(Z)=>c2(Z,X),internalRoles:Y});return $.families.set(X.key,Q),$.defaults.set(X.key,X.default),z}function zE($,X){if("mutable"in X)return LW($,X);return c2($,X)}var wW=($,X)=>D$($).atoms.has(X),qC=($,X)=>D$($).writableSelectors.has(X),TC=($,X)=>D$($).readonlySelectors.has(X),RC=($,X)=>wW($,X)||qC($,X)||TC($,X),QW=($,X)=>{return D$($).selectorGraph.getRelationEntries({downstreamSelectorKey:X}).filter(([z,{source:G}])=>G!==X).map(([z,{source:G}])=>G).filter((z)=>RC($,z))},FE=($,X,Y)=>{let z=[],G=QW($,X);while(G.length>0){let U=G.shift();if(Y.has(U))continue;if(Y.add(U),!wW($,U))G.push(...QW($,U));else if(!z.includes(U))z.push(U)}return z},PC=($,X)=>{let Y=$.key,z=QW(X,Y),G=new Set;return z.flatMap((U)=>wW(X,U)?U:FE(X,U,G))},vC=($,X,Y,z,G)=>{let U=D$($),{type:W,key:Q}=z;if(W==="atom"||W==="mutable_atom")U.selectorAtoms.set({selectorKey:Y,atomKey:Q}),$.logger.info("\uD83D\uDD0D",X,Y,`discovers root atom "${Q}"`);else{let Z=FE($,Q,G);$.logger.info("\uD83D\uDD0D",X,Y,`discovers root atoms: [ ${Z.map((H)=>`"${H}"`).join(", ")} ]`);for(let H of Z)U.selectorAtoms=U.selectorAtoms.set({selectorKey:Y,atomKey:H})}G.add(Q)},F7=($,X,Y,z)=>({get:(...G)=>{let U=D$($),W;if(G.length===2){let[O,w]=G;W=p$($,O,w)}else[W]=G;let Q=x6($,W),Z=E7($,Q),H=W.key;return $.logger.info("\uD83D\uDD0C",X,Y,`registers dependency ( "${H}" =`,Z,")"),U.selectorGraph.set({upstreamSelectorKey:H,downstreamSelectorKey:Y},{source:W.key}),vC($,X,Y,W,z),Z},set:(...G)=>{let U,W;if(G.length===2)U=G[0],W=G[1];else{let H=G[0],O=G[1];W=G[2],U=p$($,H,O)}let Q=D$($),Z=x6(Q,U);EE(Q,Z,W)},find:(...G)=>p$($,...G),json:(G)=>n8($,G)}),VW=($,X,Y)=>{let z=D$($),G=new g$,U=new Set,{key:W,const:Q}=X,Z="readonly_held_selector",{get:H,find:O,json:w}=F7(z,"readonly_held_selector",W,U),D={...X,type:"readonly_held_selector",subject:G,install:(F)=>VW(F,X,Y),get:()=>{return X.get({get:H,find:O,json:w},Q),s1(D$($),W,Q,G),U.clear(),Q},...Y&&{family:Y}};z.readonlySelectors.set(W,D),$.logger.info("\u2728","readonly_held_selector",W,"=",Q);let N={key:W,type:"readonly_held_selector"};if(Y)N.family=Y;return N},DW=($,X,Y)=>{let z=D$($),G=new g$,U=new Set,W=X.key,Q="readonly_pure_selector",{get:Z,find:H,json:O}=F7(z,"readonly_pure_selector",W,U),w=()=>{let F=X.get({get:Z,find:H,json:O});return s1(D$($),W,F,G),U.clear(),F},V={...X,type:"readonly_pure_selector",subject:G,install:(F)=>DW(F,X,Y),get:w,...Y&&{family:Y}};z.readonlySelectors.set(W,V);let D=w();$.logger.info("\u2728","readonly_pure_selector",W,"=",D);let N={key:W,type:"readonly_pure_selector"};if(Y)N.family=Y;return N},NW=($,X,Y)=>{let z=D$($),G=new g$,U=new Set,{key:W,const:Q}=X,Z="writable_held_selector",H=F7(z,"writable_held_selector",W,U),{find:O,get:w,json:V}=H,D={find:O,get:w,json:V},N=(R=X.get,_=D$($))=>{return R(D,Q),s1(_,W,Q,G),U.clear(),Q},L={...X,type:"writable_held_selector",subject:G,install:(R)=>NW(R,X,Y),get:N,set:(R)=>{let _=D$($),v=N(X.get,_),x=OW(R)(v);if($.logger.info("\uD83D\uDCDD","writable_held_selector",W,"set (",v,"->",x,")"),s1(_,W,x,G),u2(_,W),H8(_))G.next({newValue:x,oldValue:v});X.set(H,x)},...Y&&{family:Y}};z.writableSelectors.set(W,L);let K=N();$.logger.info("\u2728","writable_held_selector",W,"=",K);let q={key:W,type:"writable_held_selector"};if(Y)q.family=Y;return q},EW=($,X,Y)=>{let z=D$($),G=new g$,U=new Set,W=X.key,Q="writable_pure_selector",Z=F7(z,"writable_pure_selector",W,U),{find:H,get:O,json:w}=Z,V={find:H,get:O,json:w},D=(q=X.get,R=D$($))=>{let _=q(V);return s1(R,W,_,G),U.clear(),_},F={...X,type:"writable_pure_selector",subject:G,install:(q)=>EW(q,X,Y),get:D,set:(q)=>{let R=D$($),_=D(X.get,R),v=OW(q)(_);if($.logger.info("\uD83D\uDCDD","writable_pure_selector",W,"set (",_,"->",v,")"),s1(R,X.key,v,G),u2(R,X.key),H8(R))G.next({newValue:v,oldValue:_});X.set(Z,v)},...Y&&{family:Y}};z.writableSelectors.set(W,F);let L=D();$.logger.info("\u2728",F.type,F.key,"=",L);let K={key:W,type:"writable_pure_selector"};if(Y)K.family=Y;return K};function oX($,X){let Y="set"in X,z="const"in X;if(z&&Y){let U=NW($,X,void 0);return $.on.selectorCreation.next(U),U}if(z){let U=VW($,X,void 0);return $.on.selectorCreation.next(U),U}if(Y){let U=EW($,X,void 0);return $.on.selectorCreation.next(U),U}let G=DW($,X,void 0);return $.on.selectorCreation.next(G),G}function CC($,X){let Y=D$($),{key:z,type:G}=X,U=x6(Y,X);if(!U.family)$.logger.error("\u274C",G,z,"Standalone selectors cannot be disposed.");else{if(Y.molecules.get(U.family.subKey))Y.moleculeData.delete(U.family.subKey,U.family.key);let Q;switch(X.type){case"writable_held_selector":Y.writableSelectors.delete(z),Q={key:U.family.key,type:"writable_held_selector_family"},x6($,Q).subject.next({type:"state_disposal",subType:"selector",token:X});break;case"writable_pure_selector":Y.writableSelectors.delete(z),Q={key:U.family.key,type:"writable_pure_selector_family"},x6($,Q).subject.next({type:"state_disposal",subType:"selector",token:X});break;case"readonly_held_selector":Y.readonlySelectors.delete(z),Q={key:U.family.key,type:"readonly_held_selector_family"},x6($,Q).subject.next({type:"state_disposal",subType:"selector",token:X});break;case"readonly_pure_selector":Y.readonlySelectors.delete(z),Q={key:U.family.key,type:"readonly_pure_selector_family"},x6($,Q).subject.next({type:"state_disposal",subType:"selector",token:X});break}if(Y.valueMap.delete(z),Y.selectorAtoms.delete(z),Y.selectorGraph.delete(z),$.logger.info("\uD83D\uDD25",X.type,z,"deleted"),t6(Y)&&Y.transactionMeta.phase==="building")Y.transactionMeta.update.updates.push({type:"state_disposal",subType:"selector",token:X});else $.on.selectorDisposal.next(X)}}function i8($,X,Y){let z=X.key,G="readonly_pure_selector_family",U={key:z,type:"readonly_pure_selector_family"},W=$.families.get(z);if(W)$.logger.error("\u2757","readonly_pure_selector_family",z,`Overwriting an existing ${r8(W)} "${W.key}" in store "${$.config.name}". You can safely ignore this warning if it is due to hot module replacement.`);let Q=new g$,H=Object.assign((O)=>{let w=d$(O),V={key:z,subKey:w},D=`${z}(${w})`,N=D$($),F=DW(N,{key:D,get:X.get(O)},V);return Q.next({type:"state_creation",token:F}),F},U,{internalRoles:Y,subject:Q,install:(O)=>i8(O,X),default:(O)=>{return X.get(O)({get:(...V)=>b1($,...V),find:(...V)=>p$($,...V),json:(V)=>n8($,V)})}});return $.families.set(z,H),U}function ME($,X,Y){let z=X.key,G="readonly_held_selector_family",U={key:z,type:"readonly_held_selector_family"},W=$.families.get(z);if(W)$.logger.error("\u2757","readonly_held_selector_family",z,`Overwriting an existing ${r8(W)} "${W.key}" in store "${$.config.name}". You can safely ignore this warning if it is due to hot module replacement.`);let Q=new g$,H=Object.assign((O)=>{let w=d$(O),V={key:z,subKey:w},D=`${z}(${w})`,N=D$($),F=VW(N,{key:D,const:X.const(O),get:X.get(O)},V);return Q.next({type:"state_creation",token:F}),F},U,{internalRoles:Y,subject:Q,install:(O)=>ME(O,X),default:X.const});return $.families.set(z,H),U}function LE($,X,Y){let z=X.key,G="writable_held_selector_family",U={key:z,type:"writable_held_selector_family"},W=$.families.get(z);if(W)$.logger.error("\u2757","writable_held_selector_family",z,`Overwriting an existing ${r8(W)} "${W.key}" in store "${$.config.name}". You can safely ignore this warning if it is due to hot module replacement.`);let Q=new g$,H=Object.assign((O)=>{let w=d$(O),V={key:z,subKey:w},D=`${z}(${w})`,N=D$($),F=NW(N,{key:D,const:X.const(O),get:X.get(O),set:X.set(O)},V);return Q.next({type:"state_creation",token:F}),F},U,{internalRoles:Y,subject:Q,install:(O)=>LE(O,X),default:X.const});return $.families.set(z,H),U}function V7($,X,Y){let z=X.key,G="writable_pure_selector_family",U={key:z,type:"writable_pure_selector_family"},W=$.families.get(z);if(W)$.logger.error("\u2757","writable_pure_selector_family",z,`Overwriting an existing ${r8(W)} "${W.key}" in store "${$.config.name}". You can safely ignore this warning if it is due to hot module replacement.`);let Q=new g$,H=Object.assign((O)=>{let w=d$(O),V={key:z,subKey:w},D=`${z}(${w})`,N=D$($),F=EW(N,{key:D,get:X.get(O),set:X.set(O)},V);return Q.next({type:"state_creation",token:F}),F},U,{internalRoles:Y,subject:Q,install:(O)=>V7(O,X),default:(O)=>{return X.get(O)({get:(...V)=>b1($,...V),find:(...V)=>p$($,...V),json:(V)=>n8($,V)})}});return $.families.set(z,H),U}function $W($,X){let Y="set"in X,z="const"in X;if(z&&Y)return LE($,X,void 0);if(z)return ME($,X,void 0);if(Y)return V7($,X);return i8($,X)}function jC($,X,Y){let z=$.families.get(X.key);if(z===void 0)throw new HW(X,$);let G=z(Y),U=D$($);if(G.family){if(H8(U))switch(G.type){case"atom":case"mutable_atom":$.on.atomCreation.next(G);break;case"writable_pure_selector":case"readonly_pure_selector":case"writable_held_selector":case"readonly_held_selector":$.on.selectorCreation.next(G);break}else if(t6(U)&&U.on.transactionApplying.state===null)U.transactionMeta.update.updates.push({type:"state_creation",token:G})}return G}function BC($,X,Y){let z=d$(Y),G=`${X.key}(${z})`,U=D$($),W;switch(X.type){case"atom_family":case"mutable_atom_family":W=U.atoms.get(G);break;case"writable_held_selector_family":case"writable_pure_selector_family":W=U.writableSelectors.get(G);break;case"readonly_held_selector_family":case"readonly_pure_selector_family":W=U.readonlySelectors.get(G);break}if(W)return L0(W);return W}function p$($,X,Y){let z=BC($,X,Y);if(z)return z;let G=d$(Y),U=$.molecules.get(G);if(!U&&$.config.lifespan==="immortal"){let W=MC(X,Y);return $.logger.error("\u274C",W.type,W.key,`was not found in store "${$.config.name}"; returned a counterfeit token.`),W}if(z=jC($,X,Y),U)D$($).moleculeData.set(G,X.key);return z}function aX($,...X){let Y;if(X.length===1)Y=X[0];else{let z=X[0],G=X[1];Y=p$($,z,G)}try{x6($,Y)}catch(z){$.logger.error("\u274C",Y.type,Y.key,`could not be disposed because it was not found in the store "${$.config.name}".`);return}switch(Y.type){case"atom":case"mutable_atom":TE($,Y);break;case"writable_pure_selector":case"readonly_pure_selector":case"writable_held_selector":case"readonly_held_selector":CC($,Y);break}}function IC($,X){if(X.family){let Y=$.families.get(X.family.key);if(Y)return Y}}function Y1($,...X){let Y,z,G,U;if(X.length===2){if(Y=X[0],U=X[1],z=IC($,Y)??null,z)G=Y.family?g4(Y.family.subKey):null,Y=p$($,z,G)}else z=X[0],G=X[1],U=X[2],Y=p$($,z,G);if("counterfeit"in Y&&"family"in Y){let Z=Y.family.subKey,H=$.disposalTraces.buffer.find((O)=>O?.key===Z);$.logger.error("\u274C",Y.type,Y.key,`could not be set because it was not found in the store "${$.config.name}".`,H?`This state was previously disposed:
4
4
  ${H.trace}`:"No previous disposal trace was found.");return}let W=zW($,Y);if(W){let Z=$.on.operationClose.subscribe(`waiting to set "${Y.key}" at T-${W}`,()=>{Z(),$.logger.info("\uD83D\uDFE2",Y.type,Y.key,`resuming deferred setState from T-${W}`),Y1($,Y,U)});return}let Q=x6($,Y);EE($,Q,U),UW($)}function xC($,X,Y){let{key:z,newValue:G,oldValue:U}=X,W=$==="newValue"?G:U,Q={key:z,type:"atom"};if(X.family)Object.assign(Q,{family:X.family});Y1(Y,Q,W)}function SC($){let{stack:X}=$;if(X)return`
5
5
  `+X.split(`
6
6
  `)?.slice(1)?.join(`
@@ -13,7 +13,7 @@ ${D.trace}`:`No previous disposal trace for ${Y} was found.`);return}let G=$.mol
13
13
  ${V.trace}`:`No previous disposal trace for ${G} was found.`),Y}let Q=d$(X),Z=U.molecules.get(Q);if(!Z){let V=$.disposalTraces.buffer.find((D)=>D?.key===Q);return $.logger.error("\u274C","molecule",Y,"claim failed:",`Could not allocate to ${Q} in store "${$.config.name}".`,V?`
14
14
  ${Q} was most recently disposed
15
15
  ${V.trace}`:`No previous disposal trace for ${Q} was found.`),Y}let H=$.moleculeGraph.getRelationEntries({downstreamMoleculeKey:W.stringKey}).filter(([,{source:V}])=>V!==G).map(([V])=>g4(V));if(z)U.moleculeGraph.delete(G);U.moleculeGraph.set({upstreamMoleculeKey:Z.stringKey,downstreamMoleculeKey:W.stringKey},{source:Z.stringKey});let O={type:"molecule_transfer",key:W.key,from:H,to:[Z.key]};if(t6(U)&&U.transactionMeta.phase==="building")U.transactionMeta.update.updates.push(O);return Y}function kC($,X,Y){switch(X){case"newValue":{JE($,Y);break}case"oldValue":{aX(Y,$.token);break}}}function bC($,X,Y){switch(X){case"newValue":{aX(Y,$.token);break}case"oldValue":{if(JE($,Y),$.subType==="atom")Y.valueMap.set($.token.key,$.value);break}}}function JE($,X){let{family:Y}=$.token;if(Y){let z=X.families.get(Y.key);if(z)p$(X,z,g4(Y.subKey))}}function fC($,X,Y){switch(X){case"newValue":sX(Y,$.provenance,$.key);break;case"oldValue":eX(Y,$.key);break}}function hC($,X,Y){switch(X){case"newValue":eX(Y,$.key);break;case"oldValue":{let z=$.provenance.map(g4);sX(Y,z,$.key);for(let[G,U]of $.values){let W=Y.families.get(G);if(W){p$(Y,W,$.key);let Q=`${G}(${d$($.key)})`;Y.valueMap.set(Q,U)}}}break}}function gC($,X,Y){switch(X){case"newValue":{let z=$.to.length===1?$.to[0]:$.to;g2(Y,z,$.key,"exclusive")}break;case"oldValue":{let z=$.from.length===1?$.from[0]:$.from;g2(Y,z,$.key,"exclusive")}break}}function AE($,X,Y){let z=$==="newValue"?X.updates:[...X.updates].reverse();for(let G of z)switch(G.type){case"atom_update":case"selector_update":xC($,G,Y);break;case"state_creation":kC(G,$,Y);break;case"state_disposal":bC(G,$,Y);break;case"molecule_creation":fC(G,$,Y);break;case"molecule_disposal":hC(G,$,Y);break;case"molecule_transfer":gC(G,$,Y);break;case"transaction_update":AE($,G,Y);break}}function KE($,X){return $.transactionMeta.actionContinuities.getRelatedKey(X)}function yC($,X){return $.transactionMeta.epoch.get(X)}function mC($,X){if(!H8($))return;let z=KE($,X);if(z===void 0)return;return yC($,z)}function uC($,X,Y){if(!H8($))return;let G=KE($,X);if(G!==void 0)$.transactionMeta.epoch.set(G,Y)}var cC=($,X)=>{let Y=D$(X),{parent:z}=Y;if(z===null||!t6(Y)||Y.transactionMeta?.phase!=="building"){X.logger.warn("\uD83D\uDC1E","transaction","???","applyTransaction called outside of a transaction. This is probably a bug in AtomIO.");return}Y.transactionMeta.phase="applying",Y.transactionMeta.update.output=$,z.child=null,z.on.transactionApplying.next(Y.transactionMeta);let{updates:G}=Y.transactionMeta.update;if(X.logger.info("\uD83D\uDEC4","transaction",Y.transactionMeta.update.key,`Applying transaction with ${G.length} updates:`,G),AE("newValue",Y.transactionMeta.update,z),H8(z))uC(z,Y.transactionMeta.update.key,Y.transactionMeta.update.epoch),x6(X,{key:Y.transactionMeta.update.key,type:"transaction"})?.subject.next(Y.transactionMeta.update),X.logger.info("\uD83D\uDEEC","transaction",Y.transactionMeta.update.key,"Finished applying transaction.");else if(t6(z))z.transactionMeta.update.updates.push(Y.transactionMeta.update);z.on.transactionApplying.next(null)};function pC($){return{store:$}}function b1($,...X){let Y,z,G;if(X.length===1)Y=X[0];else z=X[0],G=X[1],Y=p$($,z,G);if("counterfeit"in Y&&"family"in Y){z=$.families.get(Y.family.key);let U=Y.family.subKey,W=$.disposalTraces.buffer.find((Q)=>Q?.key===U);switch($.logger.error("\u274C",Y.type,Y.key,`could not be retrieved because it was not found in the store "${$.config.name}".`,W?`This state was previously disposed:
16
- ${W.trace}`:"No previous disposal trace was found."),z.type){case"atom_family":case"mutable_atom_family":return $.defaults.get(z.key);case"readonly_pure_selector_family":case"writable_pure_selector_family":case"readonly_held_selector_family":case"writable_held_selector_family":{if($.defaults.has(z.key))return $.defaults.get(Y.family.key);let Q=x6($,z).default(U);return $.defaults.set(z.key,Q),Q}}}return E7($,x6($,Y))}var a1=class extends Map{deleted=new Set;source;constructor($){super();this.source=$}get($){if(super.has($))return super.get($);if(!this.deleted.has($)&&this.source.has($))return this.source.get($);return}set($,X){return this.deleted.delete($),super.set($,X)}hasOwn($){return super.has($)}has($){return!this.deleted.has($)&&(super.has($)||this.source.has($))}delete($){return this.deleted.add($),super.delete($)}},dC=($,X,Y,z)=>{let G=D$($),U={parent:G,child:null,on:G.on,loggers:G.loggers,logger:G.logger,config:G.config,atoms:new a1(G.atoms),atomsThatAreDefault:new Set(G.atomsThatAreDefault),families:new a1(G.families),joins:new a1(G.joins),operation:{open:!1},readonlySelectors:new a1(G.readonlySelectors),timelines:new a1(G.timelines),timelineTopics:new E4(G.timelineTopics.toJSON()),trackers:new Map,transactions:new a1(G.transactions),selectorAtoms:new E4(G.selectorAtoms.toJSON()),selectorGraph:new E4(G.selectorGraph.toJSON(),{makeContentKey:(...H)=>H.sort().join(":")}),writableSelectors:new a1(G.writableSelectors),valueMap:new a1(G.valueMap),defaults:G.defaults,disposalTraces:$.disposalTraces.copy(),molecules:new a1(G.molecules),moleculeGraph:new E4(G.moleculeGraph.toJSON(),{makeContentKey:G.moleculeGraph.makeContentKey}),moleculeData:new E4(G.moleculeData.toJSON(),{makeContentKey:G.moleculeData.makeContentKey}),moleculeJoins:new E4(G.moleculeJoins.toJSON(),{makeContentKey:G.moleculeJoins.makeContentKey}),miscResources:new a1(G.miscResources)},W=mC($,X),Q={phase:"building",update:{type:"transaction_update",key:X,id:z,epoch:W===void 0?NaN:W+1,updates:[],params:Y,output:void 0},toolkit:{get:(...H)=>b1(Z,...H),set:(...H)=>{Y1(Z,...H)},run:(H,O=GE())=>eU(Z,H,O),find:(...H)=>p$($,...H),json:(H)=>n8(Z,H),dispose:(...H)=>{aX(Z,...H)},env:()=>pC(Z)}},Z=Object.assign(U,{transactionMeta:Q});return G.child=Z,$.logger.info("\uD83D\uDEEB","transaction",X,"Building transaction with params:",Y),Z};function XW($,X){let Y={key:X.key,type:"transaction",run:(U,W)=>{let Q=dC($,X.key,U,W);try{let Z=D$($),{toolkit:H}=Q.transactionMeta,O=X.do(H,...U);return cC(O,Z),O}catch(Z){throw JC(z),$.logger.warn("\uD83D\uDCA5","transaction",X.key,"caught:",Z),Z}},install:(U)=>XW(U,X),subject:new g$},z=D$($);z.transactions.set(Y.key,Y);let G=L0(Y);return $.on.transactionCreation.next(G),G}var QE=class{parent=null;child=null;valueMap=new Map;defaults=new Map;atoms=new Map;writableSelectors=new Map;readonlySelectors=new Map;atomsThatAreDefault=new Set;selectorAtoms=new E4({between:["selectorKey","atomKey"],cardinality:"n:n"});selectorGraph=new E4({between:["upstreamSelectorKey","downstreamSelectorKey"],cardinality:"n:n"},{makeContentKey:(...$)=>$.sort().join(":")});trackers=new Map;families=new Map;joins=new Map;transactions=new Map;transactionMeta={epoch:new Map,actionContinuities:new E4({between:["continuity","action"],cardinality:"1:n"})};timelines=new Map;timelineTopics=new E4({between:["timelineKey","topicKey"],cardinality:"1:n"});disposalTraces=new EC(100);molecules=new Map;moleculeJoins=new E4({between:["moleculeKey","joinKey"],cardinality:"n:n"},{makeContentKey:(...$)=>$.sort().join(":")});moleculeGraph=new E4({between:["upstreamMoleculeKey","downstreamMoleculeKey"],cardinality:"n:n"},{makeContentKey:(...$)=>$.sort().join(":")});moleculeData=new E4({between:["moleculeKey","stateFamilyKey"],cardinality:"n:n"},{makeContentKey:(...$)=>$.sort().join(":")});miscResources=new Map;on={atomCreation:new g$,atomDisposal:new g$,selectorCreation:new g$,selectorDisposal:new g$,timelineCreation:new g$,transactionCreation:new g$,transactionApplying:new LC(null),operationClose:new g$,moleculeCreation:new g$,moleculeDisposal:new g$};operation={open:!1};config={name:"IMPLICIT_STORE",lifespan:"ephemeral"};loggers=[new XE("warn",($,X,Y)=>!$Y(Y))];logger={error:(...$)=>{for(let X of this.loggers)X.error(...$)},info:(...$)=>{for(let X of this.loggers)X.info(...$)},warn:(...$)=>{for(let X of this.loggers)X.warn(...$)}};constructor($,X=null){if(this.config={...X?.config,...$},X!==null){if(this.valueMap=new Map(X?.valueMap),this.operation={...X?.operation},H8(X))this.transactionMeta={epoch:new Map(X?.transactionMeta.epoch),actionContinuities:new E4(X?.transactionMeta.actionContinuities.toJSON())};for(let[,z]of X.families){if(z.internalRoles?.includes("mutable")||z.internalRoles?.includes("join"))continue;z.install(this)}let Y=new Set;for(let[,z]of X.atoms){if(Y.has(z.key))continue;if(z.install(this),z.type==="mutable_atom"){let G=n8(X,z),U=JW(z);Y.add(G.key),Y.add(U.key)}}for(let[,z]of X.readonlySelectors)z.install(this);for(let[,z]of X.writableSelectors){if(Y.has(z.key))continue;z.install(this)}for(let[,z]of X.transactions)z.install(this);for(let[,z]of X.timelines)z.install(this)}}},R6={get STORE(){return globalThis.ATOM_IO_IMPLICIT_STORE??=new QE({name:"IMPLICIT_STORE",lifespan:"ephemeral"}),globalThis.ATOM_IO_IMPLICIT_STORE}};function x6($,X){let Y,z=$;while(z!==null){switch(X.type){case"atom":case"mutable_atom":Y=z.atoms.get(X.key);break;case"writable_pure_selector":case"writable_held_selector":Y=z.writableSelectors.get(X.key);break;case"readonly_pure_selector":case"readonly_held_selector":Y=z.readonlySelectors.get(X.key);break;case"atom_family":case"mutable_atom_family":case"writable_pure_selector_family":case"readonly_pure_selector_family":case"writable_held_selector_family":case"readonly_held_selector_family":Y=z.families.get(X.key);break;case"timeline":Y=z.timelines.get(X.key);break;case"transaction":Y=z.transactions.get(X.key);break}if(Y)return Y;z=z.child}throw new HW(X,$)}var lC=($,X)=>{let Y=D$($);if(Y.operation.open)return Y.operation.prev.get(X.key);return Y.valueMap.get(X.key)};var VE=($,X)=>{let Y=D$($);return PC(X,$).map((G)=>{let U=Y.atoms.get(G);if(U===void 0)throw new Error(`Atom "${G}", a dependency of selector "${X.key}", not found in store "${$.config.name}".`);return U.subject.subscribe(`${X.type}:${X.key}`,(W)=>{$.logger.info("\uD83D\uDCE2",X.type,X.key,"root",G,"went",W.oldValue,"->",W.newValue);let Q=lC(Y,X),Z=E7(Y,X);$.logger.info("\u2728",X.type,X.key,"went",Q,"->",Z),X.subject.next({newValue:Z,oldValue:Q})})})};function m2($,X,Y,z){function G(w){if($.operation.open){let V=$.on.operationClose.subscribe(`state subscription ${Y}`,()=>{V(),z(w)})}else z(w)}let U=x6($,X);$.logger.info("\uD83D\uDC40",U.type,U.key,`Adding subscription "${Y}"`);let W=U.type==="writable_pure_selector"||U.type==="readonly_pure_selector",Q=null,Z=G;if(W)Q=VE($,U),Z=(w)=>{if(Q)Q.length=0,Q.push(...VE($,U));G(w)};let H=U.subject.subscribe(Y,Z);return()=>{if($.logger.info("\uD83D\uDE48",U.type,U.key,`Removing subscription "${Y}"`),H(),Q)for(let w of Q)w()}}var iC=($,X,Y,z)=>{let G=x6($,X);$.logger.info("\uD83D\uDC40","timeline",X.key,`Adding subscription "${Y}"`);let U=G.subject.subscribe(Y,z);return()=>{$.logger.info("\uD83D\uDE48","timeline",X.key,`Removing subscription "${Y}" from timeline`),U()}};var FW=class{initializeState($,X){let Y=`*${$.key}`;X.atoms.delete(Y),X.valueMap.delete(Y);let z=$.family?{key:`*${$.family.key}`,subKey:$.family.subKey}:void 0,G=o8(X,{key:Y,default:null},z);if(X.parent?.valueMap.has(Y)){let U=X.parent.valueMap.get(Y);X.valueMap.set(Y,U)}return G}unsubscribeFromInnerValue;unsubscribeFromState;observeCore($,X,Y){let z=`tracker:${Y.config.name}:${t6(Y)?Y.transactionMeta.update.key:"main"}:${$.key}`,G=b1(Y,$);this.unsubscribeFromInnerValue=G.subscribe(z,(U)=>{Y1(Y,X,U)}),this.unsubscribeFromState=m2(Y,$,z,(U)=>{if(U.newValue!==U.oldValue)this.unsubscribeFromInnerValue(),this.unsubscribeFromInnerValue=U.newValue.subscribe(z,(W)=>{Y1(Y,X,W)})})}updateCore($,X,Y){let z=`tracker:${Y.config.name}:${t6(Y)?Y.transactionMeta.update.key:"main"}:${$.key}`;m2(Y,X,z,({newValue:G,oldValue:U})=>{let W=Y.timelineTopics.getRelatedKey(X.key);if(W){if(Y.timelines.get(W)?.timeTraveling){let H=iC(Y,{key:W,type:"timeline"},z,(O)=>{H(),Y1(Y,$,(w)=>{if(O==="redo"&&G)w.do(G);else if(O==="undo"&&U)w.undo(U);return w})});return}}let Q=Y.on.operationClose.subscribe(z,()=>{Q();let Z=b1(Y,$),H=G===null?-1:Z.getUpdateNumber(G),O=H-Z.cacheUpdateNumber;if(G&&O===1)Y1(Y,$,(w)=>(w.do(G),w));else Y.logger.info("\u274C","mutable_atom",$.key,`could not be updated. Expected update number ${Z.cacheUpdateNumber+1}, but got ${H}`)})})}mutableState;latestUpdateState;[Symbol.dispose];constructor($,X){this.mutableState=$;let Y=D$(X);this.latestUpdateState=this.initializeState($,Y),this.observeCore($,this.latestUpdateState,Y),this.updateCore($,this.latestUpdateState,Y),Y.trackers.set($.key,this),this[Symbol.dispose]=()=>{this.unsubscribeFromInnerValue(),this.unsubscribeFromState(),Y.trackers.delete($.key)}}};function MW($,X,Y){$.logger.info("\uD83D\uDD28","atom",X.key,`creating in store "${$.config.name}"`);let z=D$($),{key:G,default:U}=X,W=z.atoms.get(G),Q="mutable_atom";if(W&&W.type===Q)return $.logger.error("\u274C",Q,G,"Tried to create atom, but it already exists in the store."),L0(W);let Z=new g$,H={...X,type:Q,install:(V)=>{return V.logger.info("\uD83D\uDEE0\uFE0F","atom",G,`installing in store "${V.config.name}"`),MW(V,X,Y)},subject:Z};if(Y)H.family=Y;let O=U();z.atoms.set(H.key,H),qE($,G),s1(z,G,O,Z);let w=L0(H);if(X.effects){let V=0,D=[];for(let N of X.effects){let F=N({setSelf:(L)=>{Y1($,w,L)},onSet:(L)=>m2($,w,`effect[${V}]`,L)});if(F)D.push(F);++V}H.cleanup=()=>{for(let N of D)N()}}if(new FW(w,$),!Y)sN(w,X,$);return w}var rC=class{trackers=new Map;latestUpdateAtoms;mutableAtoms;constructor($,X){let Y=c2(X,{key:`*${$.key}`,default:null},["mutable","updates"]);this.latestUpdateAtoms=x6(X,Y),this.mutableAtoms=$,this.mutableAtoms.subject.subscribe(`store=${X.config.name}::tracker-atom-family`,(z)=>{let{type:G,token:U}=z;if(U.family){let W=g4(U.family.subKey);switch(G){case"state_creation":this.trackers.set(W,new FW(U,X));break;case"state_disposal":{let Q=this.trackers.get(W);if(Q)Q[Symbol.dispose](),this.trackers.delete(W)}break}}})}};function LW($,X,Y){let z={key:X.key,type:"mutable_atom_family"},G=$.families.get(X.key);if(G)$.logger.error("\u2757","mutable_atom_family",X.key,`Overwriting an existing ${r8(G)} "${G.key}" in store "${$.config.name}". You can safely ignore this warning if it is due to hot module replacement.`);let U=new g$,Q=Object.assign((Z)=>{let H=d$(Z),O={key:X.key,subKey:H},w=`${X.key}(${H})`,V=D$($),D={key:w,default:()=>X.default(Z),toJson:X.toJson,fromJson:X.fromJson,mutable:!0};if(X.effects)D.effects=X.effects(Z);let N=MW(V,D,O);return U.next({type:"state_creation",token:N}),N},z,{subject:U,install:(Z)=>LW(Z,X),toJson:X.toJson,fromJson:X.fromJson,internalRoles:Y});return $.families.set(X.key,Q),eN($,Q,X),new rC(Q,$),z}var DE=($,X)=>{let Y=D$(X),z=`${$.key}:JSON`;return Y.families.get(z)},n8=($,X)=>{if(X.family){let z=D$($),U={key:`${X.family.key}:JSON`,type:"writable_pure_selector_family"},W=x6(z,U),Q=JSON.parse(X.family.subKey);return p$($,W,Q)}return{type:"writable_pure_selector",key:`${X.key}:JSON`}};var JW=($)=>{let Y={type:"atom",key:`*${$.key}`};if($.family)Y.family={key:`*${$.family.key}`,subKey:$.family.subKey};return Y};function nC($){return typeof $==="object"&&$!==null&&"do"in $&&"undo"in $&&"subscribe"in $}function ZW($,X,Y){let z=Y.valueMap.get(X.key),G=$.valueMap.get(X.key);if(z!==G)return G;if(z===void 0)return X.default();Y.logger.info("\uD83D\uDCC3","atom",X.key,"copying");let U=X.toJson(z),W=X.fromJson(U);return $.valueMap.set(X.key,W),new FW(X,Y),W}function s1($,X,Y,z){let G=$.valueMap.get(X);if(G instanceof GW){let U=G;if(Y instanceof Promise)return U;return $.valueMap.set(X,Y),Y}if(Y instanceof Promise){let U=new GW(Y);return $.valueMap.set(X,U),U.then((W)=>{if($.valueMap.get(X)===U){s1($,X,W,z);let Z=$.atoms.get(X);if(Z)zW($,Z),WW($,Z),UW($);else{let H=$.writableSelectors.get(X)??$.readonlySelectors.get(X);if(H)zW($,H),KC($,H),UW($)}z.next({newValue:W,oldValue:U})}}).catch((W)=>{$.logger.error("\uD83D\uDCA5","state",X,"rejected:",W)}),U}return $.valueMap.set(X,Y),Y}var oC=($,X)=>{let Y=X.valueMap.get($.key);if($.type==="mutable_atom"&&t6(X)){let{parent:z}=X;Y=ZW(X,$,z)}return Y},_E=($,X)=>{let Y=X.valueMap.get($);if(Y instanceof GW){let z=Y,G=X.writableSelectors.get($)??X.readonlySelectors.get($);if(G)z.use(G.get());return}if(X.operation.open)X.operation.prev.set($,Y);X.valueMap.delete($),X.logger.info("\uD83D\uDDD1","state",$,"evicted")},tC=($,X)=>{return D$($).atomsThatAreDefault.has(X)},qE=($,X)=>{let Y=D$($);Y.atomsThatAreDefault=new Set(Y.atomsThatAreDefault).add(X)},aC=($,X)=>{let Y=D$($);Y.atomsThatAreDefault=new Set(D$($).atomsThatAreDefault),Y.atomsThatAreDefault.delete(X)};function o8($,X,Y){let{key:G,default:U}=X;$.logger.info("\uD83D\uDD28","atom",G,`creating in store "${$.config.name}"`);let W=D$($),Q=W.atoms.get(G);if(Q&&Q.type==="atom")return $.logger.error("\u274C","atom",G,"Tried to create atom, but it already exists in the store."),L0(Q);let Z=new g$,H={...X,type:"atom",install:(V)=>{return V.logger.info("\uD83D\uDEE0\uFE0F","atom",G,`installing in store "${V.config.name}"`),o8(V,X,Y)},subject:Z};if(Y)H.family=Y;let O=U;if(U instanceof Function)O=U();W.atoms.set(G,H),qE($,G),s1(W,G,O,Z);let w=L0(H);if(X.effects){let V=0,D=[];for(let N of X.effects){let F=N({setSelf:(L)=>{Y1($,w,L)},onSet:(L)=>m2($,w,`effect[${V}]`,L)});if(F)D.push(F);++V}H.cleanup=()=>{for(let N of D)N()}}return w}function ZE($,X){if("mutable"in X){let G=MW($,X,void 0);return $.on.atomCreation.next(G),G}let z=o8($,X,void 0);return $.on.atomCreation.next(z),z}function TE($,X){let Y=D$($),{key:z,family:G}=X,U=x6(Y,X);if(!G)$.logger.error("\u274C","atom",z,"Standalone atoms cannot be disposed.");else{U.cleanup?.();let W=$.valueMap.get(U.key),Q=x6($,{key:G.key,type:"atom_family"}),Z={type:"state_disposal",subType:"atom",token:X,value:W};Q.subject.next(Z);let H=t6(Y);if(Y.atoms.delete(z),Y.valueMap.delete(z),Y.selectorAtoms.delete(z),Y.atomsThatAreDefault.delete(z),$.timelineTopics.delete(z),X.type==="mutable_atom"){let O=JW(X);TE($,O),$.trackers.delete(z)}if($.logger.info("\uD83D\uDD25","atom",z,"deleted"),H&&Y.transactionMeta.phase==="building"){let O=Y.transactionMeta.update.updates.at(-1);if(!(O?.type==="molecule_disposal"&&O.values.some(([D])=>D===U.family?.key)))Y.transactionMeta.update.updates.push(Z)}else $.on.atomDisposal.next(X)}}var YW=class{toolkit;options;defaultContent;molecules=new Map;relations;states;core;transact($,X){let Y=this.toolkit;this.toolkit=$,X(this),this.toolkit=Y}store;realm;[Symbol.dispose](){}constructor($,X,Y=R6.STORE){this.store=Y,this.realm=new YE(Y),this.options=$,this.defaultContent=X,this.store.miscResources.set(`join:${$.key}`,this),this.realm.allocate("root",$.key),this.toolkit={get:(..._)=>b1(Y,..._),set:(..._)=>{Y1(Y,..._)},find:(..._)=>p$(Y,..._),json:(_)=>n8(Y,_)};let z=$.between[0],G=$.between[1],U=LW(Y,{key:`${$.key}/relatedKeys`,default:()=>new y4,mutable:!0,fromJson:(_)=>y4.fromJSON(_),toJson:(_)=>_.toJSON()},["join","relations"]);this.core={relatedKeysAtoms:U};let W=({get:_},v)=>_(U,v),Q=({set:_},v,x)=>{if(!this.store.molecules.has(d$(v)))this.realm.allocate($.key,v);_(U,v,(S)=>S.add(x)),_(U,x,(S)=>S.add(v))},Z=({set:_},v,x)=>{_(U,v,(S)=>{return S.delete(x),S}),_(U,x,(S)=>{return S.delete(v),S})},H=(_,v,x)=>{let{find:S,get:m,set:$$}=_,I=S(U,v),Y$=m(I);for(let l of Y$){if(x.includes(l))continue;$$(U,l,(K$)=>{return K$.delete(v),K$})}$$(I,(l)=>{return l.transaction((U$)=>{U$.clear();for(let K$ of x){let b$=W(_,K$),K6=b$.has(v);if(this.relations.cardinality==="1:n"){let Y4=[];for(let u of b$){if(u===v)continue;let Q$=W(_,u);if(Q$.delete(K$),Q$.size===0)Y4.push(u)}if(!K6&&b$.size>0)b$.clear();for(let u of Y4){let Q$=[K$,u].sort(),f$=`"${Q$[0]}:${Q$[1]}"`;this.molecules.delete(f$)}}if(!K6)b$.add(v);U$.add(K$)}return!0}),l})},O=(_,v,x)=>{let{set:S}=_;S(U,v,(m)=>{return m.transaction(($$)=>{for(let I of x)$$.add(I);return!0}),m});for(let m of x)S(U,m,($$)=>{return $$.add(v),$$});return!0},w=(_,v,x)=>{let S=W(_,v);return x?S.has(x):S.size>0},V={getRelatedKeys:(_)=>W(this.toolkit,_),addRelation:(_,v)=>{this.store.moleculeJoins.set(_,$.key),this.store.moleculeJoins.set(v,$.key),Q(this.toolkit,_,v)},deleteRelation:(_,v)=>{Z(this.toolkit,_,v)},replaceRelationsSafely:(_,v)=>{H(this.toolkit,_,v)},replaceRelationsUnsafely:(_,v)=>{O(this.toolkit,_,v)},has:(_,v)=>w(this.toolkit,_,v)},D,N;if(X){N=c2(Y,{key:`${$.key}/content`,default:X},["join","content"]);let _=({get:S},m)=>S(N,m),v=({set:S},m,$$)=>{S(N,m,$$)};D=Object.assign(V,{getContent:(S)=>{return _(this.toolkit,S)},setContent:(S,m)=>{v(this.toolkit,S,m)},deleteContent:(S)=>{this.realm.deallocate(S)}})}else D=V;let F=new E4($,{externalStore:D,isAType:$.isAType,isBType:$.isBType,makeContentKey:(..._)=>{let[v,x]=_,S=_.sort(),m=`${S[0]}:${S[1]}`,$$=Y.molecules.get(d$(v)),I=Y.molecules.get(d$(x));if(!$$)this.realm.allocate($.key,v);if(!I)this.realm.allocate($.key,x);return this.realm.allocate(v,m,"all"),this.realm.claim(x,m),this.store.moleculeJoins.set(m,$.key),m}}),L=()=>i8(Y,{key:`${$.key}/singleRelatedKey`,get:(_)=>({get:v})=>{let x=v(U,_);for(let S of x)return S;return null}},["join","keys"]),K=()=>{return i8(Y,{key:`${$.key}/multipleRelatedKeys`,get:(_)=>({get:v})=>{let x=DE(U,Y);return v(x,_).members}},["join","keys"])},q=()=>i8(Y,{key:`${$.key}/singleRelatedEntry`,get:(_)=>({get:v})=>{let x=v(U,_);for(let S of x){let m=F.isAType?.(_)?_:void 0,$$=m===void 0?_:void 0;m??=S,$$??=S;let I=F.makeContentKey(m,$$),Y$=v(N,I);return[S,Y$]}return null}},["join","entries"]),R=()=>i8(Y,{key:`${$.key}/multipleRelatedEntries`,get:(_)=>({get:v})=>{let x=DE(U,Y);return v(x,_).members.map((m)=>{let $$=F.isAType?.(_)?_:void 0,I=$$===void 0?_:void 0;$$??=m,I??=m;let Y$=F.makeContentKey($$,I),l=v(N,Y$);return[m,l]})}},["join","entries"]);switch($.cardinality){case"1:1":{let _=L(),v=`${z}KeyOf${U6(G)}`,x=`${G}KeyOf${U6(z)}`,S={[v]:_,[x]:_},m;if(X){let $$=q(),I=`${z}EntryOf${U6(G)}`,Y$=`${G}EntryOf${U6(z)}`,l={[I]:$$,[Y$]:$$};m=Object.assign(S,l)}else m=S;this.relations=F,this.states=m;break}case"1:n":{let _=L(),v=K(),x=`${z}KeyOf${U6(G)}`,S=`${G}KeysOf${U6(z)}`,m={[x]:_,[S]:v},$$;if(X){let I=q(),Y$=R(),l=`${z}EntryOf${U6(G)}`,U$=`${G}EntriesOf${U6(z)}`,K$={[l]:I,[U$]:Y$};$$=Object.assign(m,K$)}else $$=m;this.relations=F,this.states=$$;break}case"n:n":{let _=K(),v=`${z}KeysOf${U6(G)}`,x=`${G}KeysOf${U6(z)}`,S={[v]:_,[x]:_},m;if(X){let $$=R(),I=`${z}EntriesOf${U6(G)}`,Y$=`${G}EntriesOf${U6(z)}`,l={[I]:$$,[Y$]:$$};m=Object.assign(S,l)}else m=S;this.relations=F,this.states=m}}}};function AW($,X){let Y=X.joins.get($.key);if(Y===void 0){let G=R6.STORE.joins.get($.key);if(G===void 0)throw new Error(`Join "${$.key}" not found in store "${X.config.name}"`);Y=new YW(G.options,G.defaultContent,X),X.joins.set($.key,Y)}return Y}function y2($,X,Y){let z=AW($,Y),G=D$(Y);if(t6(G)){let{toolkit:U}=G.transactionMeta;z.transact(U,({relations:W})=>{X(W)})}else X(z.relations)}function HE($,X,Y){let z=AW($,Y),G;switch($.cardinality){case"1:1":{let U=`${$.a}KeyOf${U6($.b)}`,W=`${$.b}KeyOf${U6($.a)}`;G={get[U](){let Z=z.states[U];return p$(Y,Z,X)},get[W](){let Z=z.states[W];return p$(Y,Z,X)}};let Q=`${$.a}EntryOf${U6($.b)}`;if(Q in z.states){let Z=`${$.b}EntryOf${U6($.a)}`;Object.assign(G,{get[Q](){let H=z.states[Q];return p$(Y,H,X)},get[Z](){let H=z.states[Z];return p$(Y,H,X)}})}break}case"1:n":{let U=`${$.a}KeyOf${U6($.b)}`,W=`${$.b}KeysOf${U6($.a)}`;G={get[U](){let Z=z.states[U];return p$(Y,Z,X)},get[W](){let Z=z.states[W];return p$(Y,Z,X)}};let Q=`${$.a}EntryOf${U6($.b)}`;if(Q in z.states){let Z=`${$.b}EntriesOf${U6($.a)}`;Object.assign(G,{get[Q](){let H=z.states[Q];return p$(Y,H,X)},get[Z](){let H=z.states[Z];return p$(Y,H,X)}})}break}case"n:n":{let U=`${$.a}KeysOf${U6($.b)}`,W=`${$.b}KeysOf${U6($.a)}`;G={get[U](){let Z=z.states[U];return p$(Y,Z,X)},get[W](){let Z=z.states[W];return p$(Y,Z,X)}};let Q=`${$.a}EntriesOf${U6($.b)}`;if(Q in z.states){let Z=`${$.b}EntriesOf${U6($.a)}`;Object.assign(G,{get[Q](){let H=z.states[Q];return p$(Y,H,X)},get[Z](){let H=z.states[Z];return p$(Y,H,X)}})}}}return G}function OE($,X){return AW($,X).core.relatedKeysAtoms}function $Y($){return $.startsWith("\uD83D\uDD0D ")}var sC=class extends Map{set($,X){if(this.has($))return console.warn("Tried to set a key that already exists in an InvariantMap",{key:$,value:X}),this;return super.set($,X)}clear(){throw new Error("Cannot clear an InvariantMap")}},Zm=class ${type="continuity";globals=[];actions=[];perspectives=[];key;constructor(X){this.key=X}static existing=new sC;static create(X,Y){let z=new $(X),{type:G,globals:U,actions:W,perspectives:Q}=Y(z),Z={type:G,key:X,globals:U,actions:W,perspectives:Q};return $.existing.set(X,Z),Z}add(...X){switch(X[0].type){case"atom":case"mutable_atom":this.globals.push(...X);break;case"transaction":this.actions.push(...X);break;case"atom_family":case"mutable_atom_family":{let[z,G]=X;this.perspectives.push({type:"realtime_perspective",resourceAtoms:z,viewAtoms:G})}break}return this}};var Hm=tX({key:"usersInRoomIndex",mutable:!0,default:()=>new y4,toJson:($)=>$.toJSON(),fromJson:($)=>y4.fromJSON($)}),KW=tX({key:"roomIndex",default:()=>new y4,mutable:!0,toJson:($)=>$.toJSON(),fromJson:($)=>y4.fromJSON($)}),eC={enteredAtEpoch:0},p2=D7({key:"usersInRooms",between:["room","user"],cardinality:"1:n",isAType:($)=>typeof $==="string",isBType:($)=>typeof $==="string"},eC),Om=N7({key:"usersInMyRoomView",get:($)=>({find:X})=>{let Y=$E(p2);return[X(Y,$)]}});import{spawn as $j}from"child_process";var _W=class{listeners;globalListeners;handleEvent($,...X){for(let z of this.globalListeners)z($,...X);let Y=this.listeners.get($);if(Y)for(let z of Y)z(...X)}id="no_id_retrieved";emit;constructor($){this.emit=$,this.listeners=new Map,this.globalListeners=new Set}on($,X){let Y=this.listeners.get($);if(Y)Y.add(X);else this.listeners.set($,new Set([X]));return this}onAny($){return this.globalListeners.add($),this}off($,X){let Y=this.listeners.get($);if(Y)if(X)Y.delete(X);else this.listeners.delete($);return this}offAny($){return this.globalListeners.delete($),this}},Xj=class extends _W{incompleteData="";unprocessedEvents=[];incompleteLog="";unprocessedLogs=[];id="#####";process;key;logger;handleLog($){if(Array.isArray($)){let[X,...Y]=$;switch(X){case"i":this.logger.info(...Y);break;case"w":this.logger.warn(...Y);break;case"e":this.logger.error(...Y);break;default:return}}}constructor($,X,Y){super((z,...G)=>{let U=JSON.stringify([z,...G])+"\x03",W=(Q)=>{if(Q.code==="EPIPE")console.error("EPIPE error during write",this.process.stdin);this.process.stdin.removeListener("error",W)};return this.process.stdin.once("error",W),this.process.stdin.write(U),this});if(this.process=$,this.key=X,this.logger=Y??{info:(...z)=>{console.info(this.id,this.key,...z)},warn:(...z)=>{console.warn(this.id,this.key,...z)},error:(...z)=>{console.error(this.id,this.key,...z)}},this.process.stdout.on("data",(z)=>{let G=z.toString();if(G==="ALIVE")return;this.unprocessedEvents.push(...G.split("\x03"));let U=this.unprocessedEvents.shift();this.incompleteData+=U??"";try{if(this.incompleteData.startsWith("error"))console.log("\u2757",this.incompleteData);let W=g4(this.incompleteData);this.handleEvent(...W);while(this.unprocessedEvents.length>0){let Q=this.unprocessedEvents.shift();if(Q){if(this.unprocessedEvents.length===0)this.incompleteData=Q;W=g4(Q),this.handleEvent(...W)}}this.incompleteData=""}catch(W){console.warn("\u26A0\uFE0F----------------\u26A0\uFE0F"),console.warn(this.incompleteData),console.warn("\u26A0\uFE0F----------------\u26A0\uFE0F"),console.error(W)}}),this.process.stderr.on("data",(z)=>{let G=z.toString();this.unprocessedLogs.push(...G.split("\x03"));let U=this.unprocessedLogs.shift();this.incompleteLog+=U??"";try{let W=g4(this.incompleteLog);this.handleLog(W);while(this.unprocessedLogs.length>0)if(this.incompleteLog=this.unprocessedLogs.shift()??"",this.incompleteLog)W=g4(this.incompleteLog),this.handleLog(W)}catch(W){console.error("\u274C\u274C\u274C"),console.error(this.incompleteLog),console.error(W),console.error("\u274C\u274C\u274C\uFE0F")}}),$.pid)this.id=$.pid.toString()}},Yj=class extends _W{in;out;id="no_id_retrieved";disposalFunctions=[];constructor($){super((...X)=>{return this.out.next(X),this});this.id=$,this.in=new g$,this.out=new g$,this.in.subscribe("socket",(X)=>{this.handleEvent(...X)})}dispose(){for(let $ of this.disposalFunctions)$()}},RE=class extends _W{incompleteData="";unprocessedEvents=[];relays;relayServices;process;id="#####";log(...$){this.process.stderr.write(d$($.map((X)=>X instanceof y4?`{ ${X.toJSON().members.join(" | ")} }`:X))+"\x03")}logger={info:(...$)=>{this.log("i",...$)},warn:(...$)=>{this.log("w",...$)},error:(...$)=>{this.log("e",...$)}};constructor(){super(($,...X)=>{let Y=JSON.stringify([$,...X]);return this.process.stdout.write(Y+"\x03"),this});if(this.process=process,this.process.stdin.resume(),this.relays=new Map,this.relayServices=[],this.process.stdin.on("data",($)=>{let X=$.toString();this.unprocessedEvents.push(...X.split("\x03"));let Y=this.unprocessedEvents.shift();this.incompleteData+=Y??"";try{let z=g4(this.incompleteData);this.logger.info("\uD83C\uDFB0","received",z),this.handleEvent(...z);while(this.unprocessedEvents.length>0){let G=this.unprocessedEvents.shift();if(G){if(this.unprocessedEvents.length===0)this.incompleteData=G;let U=g4(G);this.handleEvent(...U)}}this.incompleteData=""}catch(z){if(z instanceof Error)this.logger.error("\u2757",z.message,z.cause,z.stack)}}),this.on("exit",()=>{this.logger.info("\uD83D\uDD25",this.id,'received "exit"'),process.exit(0)}),process.on("exit",($)=>{this.logger.info("\uD83D\uDD25",this.id,`exited with code ${$}`)}),process.on("end",()=>{this.logger.info("\uD83D\uDD25",this.id,"ended"),process.exit(0)}),process.on("SIGTERM",()=>{this.logger.error("\uD83D\uDD25",this.id,"terminated"),process.exit(0)}),process.on("SIGINT",()=>{this.logger.error("\uD83D\uDD25",this.id,"interrupted"),process.exit(0)}),process.pid)this.id=process.pid?.toString();this.on("user-joins",($)=>{this.logger.info("\uD83D\uDC64","user",$,"joined");let X=new Yj(`user:${$}`);this.relays.set($,X),this.logger.info("\uD83D\uDD17","attaching services:",`[${[...this.relayServices.keys()].join(", ")}]`);for(let Y of this.relayServices){let z=Y(X);if(z)X.disposalFunctions.push(z)}this.on(`user:${$}`,(...Y)=>{X.in.next(Y)}),X.out.subscribe("socket",(Y)=>{this.emit(...Y)})}),this.on("user-leaves",($)=>{let X=this.relays.get($);if(this.off(`relay:${$}`),X)X.dispose(),this.relays.delete($)}),process.stdout.write("ALIVE")}relay($){this.logger.info("\uD83D\uDD17","running relay method"),this.relayServices.push($)}},PE=f2({key:"roomArguments",default:["echo",["Hello World!"]]}),Gj=N7({key:"room",get:($)=>async({get:X,find:Y})=>{let z=Y(PE,$),G=X(z),[U,W]=G,Q=await new Promise((Z)=>{let H=$j(U,W,{env:process.env}),O=(w)=>{if(w.toString()==="ALIVE")H.stdout.off("data",O),Z(H)};H.stdout.on("data",O)});return new Xj(Q,$)}}),Am=h2({key:"createRoom",do:({get:$,set:X,find:Y},z,G,U)=>{let W=U?[G,U]:[G],Q=Y(PE,z);X(Q,W),X(KW,(O)=>O.add(z));let Z=Y(Gj,z);return $(Z)}}),Km=h2({key:"joinRoom",do:($,X,Y,z)=>{let G={enteredAtEpoch:z};return y2(p2,(U)=>{U.set({room:X,user:Y},G)},$.env().store),G}}),_m=h2({key:"leaveRoom",do:($,X,Y)=>{y2(p2,(z)=>{z.delete({room:X,user:Y})},$.env().store)}}),qm=h2({key:"destroyRoom",do:($,X)=>{y2(p2,(Y)=>{Y.delete({room:X})},$.env().store),$.set(KW,(Y)=>(Y.delete(X),Y))}});var Tm=f2({key:"redactor",default:{occlude:($)=>$}}),Rm=f2({key:"unacknowledgedUpdates",default:()=>[]}),Pm=f2({key:"sockets",default:null}),vm=tX({key:"socketsIndex",mutable:!0,default:()=>new y4,toJson:($)=>$.toJSON(),fromJson:($)=>y4.fromJSON($)}),Cm=tX({key:"usersIndex",mutable:!0,default:()=>new y4,toJson:($)=>$.toJSON(),fromJson:($)=>y4.fromJSON($)}),jm=D7({key:"usersOfSockets",between:["user","socket"],cardinality:"1:1",isAType:($)=>$.startsWith("user::"),isBType:($)=>$.startsWith("socket::")});var Mz={};Z8(Mz,{xid:()=>GI,void:()=>TI,uuidv7:()=>tB,uuidv6:()=>oB,uuidv4:()=>nB,uuid:()=>rB,url:()=>aB,uppercase:()=>VG,unknown:()=>Zz,union:()=>Ez,undefined:()=>_I,ulid:()=>YI,uint64:()=>AI,uint32:()=>MI,tuple:()=>II,trim:()=>LG,treeifyError:()=>bW,transform:()=>dO,toUpperCase:()=>AG,toLowerCase:()=>JG,toJSONSchema:()=>OO,templateLiteral:()=>mI,symbol:()=>KI,superRefine:()=>uF,success:()=>gI,stringbool:()=>dI,stringFormat:()=>DI,string:()=>JO,strictObject:()=>CI,startsWith:()=>NG,size:()=>HG,setErrorMap:()=>nI,set:()=>kI,safeParseAsync:()=>LO,safeParse:()=>MO,registry:()=>S7,regexes:()=>e8,regex:()=>OG,refine:()=>mF,record:()=>FF,readonly:()=>kF,property:()=>XO,promise:()=>uI,prettifyError:()=>fW,preprocess:()=>iI,prefault:()=>vF,positive:()=>aH,pipe:()=>wz,partialRecord:()=>xI,parseAsync:()=>FO,parse:()=>EO,overwrite:()=>q0,optional:()=>Hz,object:()=>vI,number:()=>XF,nullish:()=>hI,nullable:()=>Oz,null:()=>WF,normalize:()=>MG,nonpositive:()=>eH,nonoptional:()=>CF,nonnegative:()=>$O,never:()=>Vz,negative:()=>sH,nativeEnum:()=>bI,nanoid:()=>eB,nan:()=>yI,multipleOf:()=>YX,minSize:()=>GX,minLength:()=>w8,mime:()=>FG,maxSize:()=>QY,maxLength:()=>ZY,map:()=>SI,lte:()=>A1,lt:()=>K0,lowercase:()=>wG,looseObject:()=>jI,locales:()=>WG,literal:()=>KF,length:()=>HY,lazy:()=>hF,ksuid:()=>zI,keyof:()=>PI,jwt:()=>VI,json:()=>lI,iso:()=>Wz,ipv6:()=>WI,ipv4:()=>UI,intersection:()=>NF,int64:()=>JI,int32:()=>FI,int:()=>AO,instanceof:()=>pI,includes:()=>DG,guid:()=>iB,gte:()=>u4,gt:()=>_0,globalRegistry:()=>e1,getErrorMap:()=>oI,function:()=>HO,formatError:()=>$G,float64:()=>EI,float32:()=>NI,flattenError:()=>e2,file:()=>fI,enum:()=>JF,endsWith:()=>EG,emoji:()=>sB,email:()=>lB,e164:()=>wI,discriminatedUnion:()=>BI,date:()=>RI,custom:()=>cI,cuid2:()=>XI,cuid:()=>$I,core:()=>T0,config:()=>P6,coerce:()=>nO,clone:()=>G1,cidrv6:()=>ZI,cidrv4:()=>QI,check:()=>yF,catch:()=>IF,boolean:()=>YF,bigint:()=>LI,base64url:()=>OI,base64:()=>HI,array:()=>mO,any:()=>qI,_default:()=>RF,_ZodString:()=>KO,ZodXID:()=>jO,ZodVoid:()=>OF,ZodUnknown:()=>ZF,ZodUnion:()=>uO,ZodUndefined:()=>zF,ZodUUID:()=>R0,ZodURL:()=>qO,ZodULID:()=>CO,ZodType:()=>P$,ZodTuple:()=>EF,ZodTransform:()=>pO,ZodTemplateLiteral:()=>bF,ZodSymbol:()=>GF,ZodSuccess:()=>jF,ZodStringFormat:()=>a$,ZodString:()=>qG,ZodSet:()=>LF,ZodRecord:()=>cO,ZodRealError:()=>OY,ZodReadonly:()=>SF,ZodPromise:()=>gF,ZodPrefault:()=>PF,ZodPipe:()=>rO,ZodOptional:()=>lO,ZodObject:()=>Nz,ZodNumberFormat:()=>wY,ZodNumber:()=>TG,ZodNullable:()=>qF,ZodNull:()=>UF,ZodNonOptional:()=>iO,ZodNever:()=>HF,ZodNanoID:()=>RO,ZodNaN:()=>xF,ZodMap:()=>MF,ZodLiteral:()=>AF,ZodLazy:()=>fF,ZodKSUID:()=>BO,ZodJWT:()=>gO,ZodIssueCode:()=>rI,ZodIntersection:()=>DF,ZodISOTime:()=>zz,ZodISODuration:()=>Uz,ZodISODateTime:()=>Yz,ZodISODate:()=>Gz,ZodIPv6:()=>xO,ZodIPv4:()=>IO,ZodGUID:()=>Qz,ZodFile:()=>_F,ZodError:()=>pB,ZodEnum:()=>_G,ZodEmoji:()=>TO,ZodEmail:()=>_O,ZodE164:()=>hO,ZodDiscriminatedUnion:()=>VF,ZodDefault:()=>TF,ZodDate:()=>Dz,ZodCustomStringFormat:()=>$F,ZodCustom:()=>Fz,ZodCatch:()=>BF,ZodCUID2:()=>vO,ZodCUID:()=>PO,ZodCIDRv6:()=>kO,ZodCIDRv4:()=>SO,ZodBoolean:()=>RG,ZodBigIntFormat:()=>yO,ZodBigInt:()=>PG,ZodBase64URL:()=>fO,ZodBase64:()=>bO,ZodArray:()=>wF,ZodAny:()=>QF,TimePrecision:()=>TH,NEVER:()=>qW,$output:()=>AH,$input:()=>KH,$brand:()=>TW});var T0={};Z8(T0,{version:()=>xQ,util:()=>n,treeifyError:()=>bW,toJSONSchema:()=>OO,toDotPath:()=>jE,safeParseAsync:()=>gW,safeParse:()=>hW,registry:()=>S7,regexes:()=>e8,prettifyError:()=>fW,parseAsync:()=>K7,parse:()=>J7,locales:()=>WG,isValidJWT:()=>rE,isValidBase64URL:()=>iE,isValidBase64:()=>eQ,globalRegistry:()=>e1,globalConfig:()=>d2,function:()=>HO,formatError:()=>$G,flattenError:()=>e2,config:()=>P6,clone:()=>G1,_xid:()=>l7,_void:()=>rH,_uuidv7:()=>g7,_uuidv6:()=>h7,_uuidv4:()=>f7,_uuid:()=>b7,_url:()=>y7,_uppercase:()=>VG,_unknown:()=>WY,_union:()=>KB,_undefined:()=>pH,_ulid:()=>d7,_uint64:()=>uH,_uint32:()=>bH,_tuple:()=>YO,_trim:()=>LG,_transform:()=>BB,_toUpperCase:()=>AG,_toLowerCase:()=>JG,_templateLiteral:()=>yB,_symbol:()=>cH,_success:()=>bB,_stringbool:()=>WO,_stringFormat:()=>QO,_string:()=>_H,_startsWith:()=>NG,_size:()=>HG,_set:()=>PB,_safeParseAsync:()=>q7,_safeParse:()=>_7,_regex:()=>OG,_refine:()=>UO,_record:()=>TB,_readonly:()=>gB,_property:()=>XO,_promise:()=>uB,_positive:()=>aH,_pipe:()=>hB,_parseAsync:()=>A7,_parse:()=>L7,_overwrite:()=>q0,_optional:()=>IB,_number:()=>jH,_nullable:()=>xB,_null:()=>dH,_normalize:()=>MG,_nonpositive:()=>eH,_nonoptional:()=>kB,_nonnegative:()=>$O,_never:()=>iH,_negative:()=>sH,_nativeEnum:()=>CB,_nanoid:()=>u7,_nan:()=>tH,_multipleOf:()=>YX,_minSize:()=>GX,_minLength:()=>w8,_min:()=>u4,_mime:()=>FG,_maxSize:()=>QY,_maxLength:()=>ZY,_max:()=>A1,_map:()=>RB,_lte:()=>A1,_lt:()=>K0,_lowercase:()=>wG,_literal:()=>jB,_length:()=>HY,_lazy:()=>mB,_ksuid:()=>i7,_jwt:()=>$z,_isoTime:()=>vH,_isoDuration:()=>CH,_isoDateTime:()=>RH,_isoDate:()=>PH,_ipv6:()=>n7,_ipv4:()=>r7,_intersection:()=>qB,_int64:()=>mH,_int32:()=>kH,_int:()=>IH,_includes:()=>DG,_guid:()=>ZG,_gte:()=>u4,_gt:()=>_0,_float64:()=>SH,_float32:()=>xH,_file:()=>GO,_enum:()=>vB,_endsWith:()=>EG,_emoji:()=>m7,_email:()=>k7,_e164:()=>e7,_discriminatedUnion:()=>_B,_default:()=>SB,_date:()=>nH,_custom:()=>zO,_cuid2:()=>p7,_cuid:()=>c7,_coercedString:()=>qH,_coercedNumber:()=>BH,_coercedDate:()=>oH,_coercedBoolean:()=>hH,_coercedBigint:()=>yH,_cidrv6:()=>t7,_cidrv4:()=>o7,_catch:()=>fB,_boolean:()=>fH,_bigint:()=>gH,_base64url:()=>s7,_base64:()=>a7,_array:()=>KG,_any:()=>lH,TimePrecision:()=>TH,NEVER:()=>qW,JSONSchemaGenerator:()=>Xz,JSONSchema:()=>aE,Doc:()=>v7,$output:()=>AH,$input:()=>KH,$constructor:()=>P,$brand:()=>TW,$ZodXID:()=>pQ,$ZodVoid:()=>VZ,$ZodUnknown:()=>UY,$ZodUnion:()=>x7,$ZodUndefined:()=>ZZ,$ZodUUID:()=>bQ,$ZodURL:()=>hQ,$ZodULID:()=>cQ,$ZodType:()=>F$,$ZodTuple:()=>XX,$ZodTransform:()=>GG,$ZodTemplateLiteral:()=>xZ,$ZodSymbol:()=>QZ,$ZodSuccess:()=>CZ,$ZodStringFormat:()=>i$,$ZodString:()=>$X,$ZodSet:()=>JZ,$ZodRegistry:()=>QG,$ZodRecord:()=>MZ,$ZodRealError:()=>GY,$ZodReadonly:()=>IZ,$ZodPromise:()=>SZ,$ZodPrefault:()=>PZ,$ZodPipe:()=>zG,$ZodOptional:()=>qZ,$ZodObject:()=>NZ,$ZodNumberFormat:()=>UZ,$ZodNumber:()=>B7,$ZodNullable:()=>TZ,$ZodNull:()=>HZ,$ZodNonOptional:()=>vZ,$ZodNever:()=>wZ,$ZodNanoID:()=>yQ,$ZodNaN:()=>BZ,$ZodMap:()=>LZ,$ZodLiteral:()=>KZ,$ZodLazy:()=>kZ,$ZodKSUID:()=>dQ,$ZodJWT:()=>GZ,$ZodIntersection:()=>FZ,$ZodISOTime:()=>rQ,$ZodISODuration:()=>nQ,$ZodISODateTime:()=>lQ,$ZodISODate:()=>iQ,$ZodIPv6:()=>tQ,$ZodIPv4:()=>oQ,$ZodGUID:()=>kQ,$ZodFunction:()=>ZO,$ZodFile:()=>_Z,$ZodError:()=>s2,$ZodEnum:()=>AZ,$ZodEmoji:()=>gQ,$ZodEmail:()=>fQ,$ZodE164:()=>YZ,$ZodDiscriminatedUnion:()=>EZ,$ZodDefault:()=>RZ,$ZodDate:()=>DZ,$ZodCustomStringFormat:()=>zZ,$ZodCustom:()=>bZ,$ZodCheckUpperCase:()=>RQ,$ZodCheckStringFormat:()=>zY,$ZodCheckStartsWith:()=>vQ,$ZodCheckSizeEquals:()=>JQ,$ZodCheckRegex:()=>qQ,$ZodCheckProperty:()=>jQ,$ZodCheckOverwrite:()=>IQ,$ZodCheckNumberFormat:()=>EQ,$ZodCheckMultipleOf:()=>NQ,$ZodCheckMinSize:()=>LQ,$ZodCheckMinLength:()=>KQ,$ZodCheckMimeType:()=>BQ,$ZodCheckMaxSize:()=>MQ,$ZodCheckMaxLength:()=>AQ,$ZodCheckLowerCase:()=>TQ,$ZodCheckLessThan:()=>R7,$ZodCheckLengthEquals:()=>_Q,$ZodCheckIncludes:()=>PQ,$ZodCheckGreaterThan:()=>P7,$ZodCheckEndsWith:()=>CQ,$ZodCheckBigIntFormat:()=>FQ,$ZodCheck:()=>w6,$ZodCatch:()=>jZ,$ZodCUID2:()=>uQ,$ZodCUID:()=>mQ,$ZodCIDRv6:()=>sQ,$ZodCIDRv4:()=>aQ,$ZodBoolean:()=>XG,$ZodBigIntFormat:()=>WZ,$ZodBigInt:()=>I7,$ZodBase64URL:()=>XZ,$ZodBase64:()=>$Z,$ZodAsyncError:()=>J0,$ZodArray:()=>YG,$ZodAny:()=>OZ});var qW=Object.freeze({status:"aborted"});function P($,X,Y){function z(Q,Z){var H;Object.defineProperty(Q,"_zod",{value:Q._zod??{},enumerable:!1}),(H=Q._zod).traits??(H.traits=new Set),Q._zod.traits.add($),X(Q,Z);for(let O in W.prototype)if(!(O in Q))Object.defineProperty(Q,O,{value:W.prototype[O].bind(Q)});Q._zod.constr=W,Q._zod.def=Z}let G=Y?.Parent??Object;class U extends G{}Object.defineProperty(U,"name",{value:$});function W(Q){var Z;let H=Y?.Parent?new U:this;z(H,Q),(Z=H._zod).deferred??(Z.deferred=[]);for(let O of H._zod.deferred)O();return H}return Object.defineProperty(W,"init",{value:z}),Object.defineProperty(W,Symbol.hasInstance,{value:(Q)=>{if(Y?.Parent&&Q instanceof Y.Parent)return!0;return Q?._zod?.traits?.has($)}}),Object.defineProperty(W,"name",{value:$}),W}var TW=Symbol("zod_brand");class J0 extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}var d2={};function P6($){if($)Object.assign(d2,$);return d2}var n={};Z8(n,{unwrapMessage:()=>l2,stringifyPrimitive:()=>r,required:()=>Aj,randomString:()=>wj,propertyKeyTypes:()=>o2,promiseAllObject:()=>Oj,primitiveTypes:()=>BW,prefixIssues:()=>m4,pick:()=>Ej,partial:()=>Jj,optionalKeys:()=>IW,omit:()=>Fj,numKeys:()=>Vj,nullish:()=>O8,normalizeParams:()=>d,merge:()=>Lj,jsonStringifyReplacer:()=>PW,joinValues:()=>h,issue:()=>kW,isPlainObject:()=>YY,isObject:()=>XY,getSizableOrigin:()=>t2,getParsedType:()=>Dj,getLengthableOrigin:()=>a2,getEnumValues:()=>i2,getElementAtPath:()=>Hj,floatSafeRemainder:()=>vW,finalizeIssue:()=>z1,extend:()=>Mj,escapeRegex:()=>A0,esc:()=>t8,defineLazy:()=>y$,createTransparentProxy:()=>Nj,clone:()=>G1,cleanRegex:()=>n2,cleanEnum:()=>Kj,captureStackTrace:()=>M7,cached:()=>r2,assignProp:()=>CW,assertNotEqual:()=>Uj,assertNever:()=>Qj,assertIs:()=>Wj,assertEqual:()=>zj,assert:()=>Zj,allowsEval:()=>jW,aborted:()=>a8,NUMBER_FORMAT_RANGES:()=>xW,Class:()=>vE,BIGINT_FORMAT_RANGES:()=>SW});function zj($){return $}function Uj($){return $}function Wj($){}function Qj($){throw new Error}function Zj($){}function i2($){let X=Object.values($).filter((z)=>typeof z==="number");return Object.entries($).filter(([z,G])=>X.indexOf(+z)===-1).map(([z,G])=>G)}function h($,X="|"){return $.map((Y)=>r(Y)).join(X)}function PW($,X){if(typeof X==="bigint")return X.toString();return X}function r2($){return{get value(){{let Y=$();return Object.defineProperty(this,"value",{value:Y}),Y}throw new Error("cached value already set")}}}function O8($){return $===null||$===void 0}function n2($){let X=$.startsWith("^")?1:0,Y=$.endsWith("$")?$.length-1:$.length;return $.slice(X,Y)}function vW($,X){let Y=($.toString().split(".")[1]||"").length,z=(X.toString().split(".")[1]||"").length,G=Y>z?Y:z,U=Number.parseInt($.toFixed(G).replace(".","")),W=Number.parseInt(X.toFixed(G).replace(".",""));return U%W/10**G}function y$($,X,Y){Object.defineProperty($,X,{get(){{let G=Y();return $[X]=G,G}throw new Error("cached value already set")},set(G){Object.defineProperty($,X,{value:G})},configurable:!0})}function CW($,X,Y){Object.defineProperty($,X,{value:Y,writable:!0,enumerable:!0,configurable:!0})}function Hj($,X){if(!X)return $;return X.reduce((Y,z)=>Y?.[z],$)}function Oj($){let X=Object.keys($),Y=X.map((z)=>$[z]);return Promise.all(Y).then((z)=>{let G={};for(let U=0;U<X.length;U++)G[X[U]]=z[U];return G})}function wj($=10){let Y="";for(let z=0;z<$;z++)Y+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return Y}function t8($){return JSON.stringify($)}var M7=Error.captureStackTrace?Error.captureStackTrace:(...$)=>{};function XY($){return typeof $==="object"&&$!==null&&!Array.isArray($)}var jW=r2(()=>{if(typeof navigator!=="undefined"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch($){return!1}});function YY($){if(XY($)===!1)return!1;let X=$.constructor;if(X===void 0)return!0;let Y=X.prototype;if(XY(Y)===!1)return!1;if(Object.prototype.hasOwnProperty.call(Y,"isPrototypeOf")===!1)return!1;return!0}function Vj($){let X=0;for(let Y in $)if(Object.prototype.hasOwnProperty.call($,Y))X++;return X}var Dj=($)=>{let X=typeof $;switch(X){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN($)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":if(Array.isArray($))return"array";if($===null)return"null";if($.then&&typeof $.then==="function"&&$.catch&&typeof $.catch==="function")return"promise";if(typeof Map!=="undefined"&&$ instanceof Map)return"map";if(typeof Set!=="undefined"&&$ instanceof Set)return"set";if(typeof Date!=="undefined"&&$ instanceof Date)return"date";if(typeof File!=="undefined"&&$ instanceof File)return"file";return"object";default:throw new Error(`Unknown data type: ${X}`)}},o2=new Set(["string","number","symbol"]),BW=new Set(["string","number","bigint","boolean","symbol","undefined"]);function A0($){return $.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function G1($,X,Y){let z=new $._zod.constr(X??$._zod.def);if(!X||Y?.parent)z._zod.parent=$;return z}function d($){let X=$;if(!X)return{};if(typeof X==="string")return{error:()=>X};if(X?.message!==void 0){if(X?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");X.error=X.message}if(delete X.message,typeof X.error==="string")return{...X,error:()=>X.error};return X}function Nj($){let X;return new Proxy({},{get(Y,z,G){return X??(X=$()),Reflect.get(X,z,G)},set(Y,z,G,U){return X??(X=$()),Reflect.set(X,z,G,U)},has(Y,z){return X??(X=$()),Reflect.has(X,z)},deleteProperty(Y,z){return X??(X=$()),Reflect.deleteProperty(X,z)},ownKeys(Y){return X??(X=$()),Reflect.ownKeys(X)},getOwnPropertyDescriptor(Y,z){return X??(X=$()),Reflect.getOwnPropertyDescriptor(X,z)},defineProperty(Y,z,G){return X??(X=$()),Reflect.defineProperty(X,z,G)}})}function r($){if(typeof $==="bigint")return $.toString()+"n";if(typeof $==="string")return`"${$}"`;return`${$}`}function IW($){return Object.keys($).filter((X)=>{return $[X]._zod.optin==="optional"&&$[X]._zod.optout==="optional"})}var xW={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},SW={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Ej($,X){let Y={},z=$._zod.def;for(let G in X){if(!(G in z.shape))throw new Error(`Unrecognized key: "${G}"`);if(!X[G])continue;Y[G]=z.shape[G]}return G1($,{...$._zod.def,shape:Y,checks:[]})}function Fj($,X){let Y={...$._zod.def.shape},z=$._zod.def;for(let G in X){if(!(G in z.shape))throw new Error(`Unrecognized key: "${G}"`);if(!X[G])continue;delete Y[G]}return G1($,{...$._zod.def,shape:Y,checks:[]})}function Mj($,X){if(!YY(X))throw new Error("Invalid input to extend: expected a plain object");let Y={...$._zod.def,get shape(){let z={...$._zod.def.shape,...X};return CW(this,"shape",z),z},checks:[]};return G1($,Y)}function Lj($,X){return G1($,{...$._zod.def,get shape(){let Y={...$._zod.def.shape,...X._zod.def.shape};return CW(this,"shape",Y),Y},catchall:X._zod.def.catchall,checks:[]})}function Jj($,X,Y){let z=X._zod.def.shape,G={...z};if(Y)for(let U in Y){if(!(U in z))throw new Error(`Unrecognized key: "${U}"`);if(!Y[U])continue;G[U]=$?new $({type:"optional",innerType:z[U]}):z[U]}else for(let U in z)G[U]=$?new $({type:"optional",innerType:z[U]}):z[U];return G1(X,{...X._zod.def,shape:G,checks:[]})}function Aj($,X,Y){let z=X._zod.def.shape,G={...z};if(Y)for(let U in Y){if(!(U in G))throw new Error(`Unrecognized key: "${U}"`);if(!Y[U])continue;G[U]=new $({type:"nonoptional",innerType:z[U]})}else for(let U in z)G[U]=new $({type:"nonoptional",innerType:z[U]});return G1(X,{...X._zod.def,shape:G,checks:[]})}function a8($,X=0){for(let Y=X;Y<$.issues.length;Y++)if($.issues[Y]?.continue!==!0)return!0;return!1}function m4($,X){return X.map((Y)=>{var z;return(z=Y).path??(z.path=[]),Y.path.unshift($),Y})}function l2($){return typeof $==="string"?$:$?.message}function z1($,X,Y){let z={...$,path:$.path??[]};if(!$.message){let G=l2($.inst?._zod.def?.error?.($))??l2(X?.error?.($))??l2(Y.customError?.($))??l2(Y.localeError?.($))??"Invalid input";z.message=G}if(delete z.inst,delete z.continue,!X?.reportInput)delete z.input;return z}function t2($){if($ instanceof Set)return"set";if($ instanceof Map)return"map";if($ instanceof File)return"file";return"unknown"}function a2($){if(Array.isArray($))return"array";if(typeof $==="string")return"string";return"unknown"}function kW(...$){let[X,Y,z]=$;if(typeof X==="string")return{message:X,code:"custom",input:Y,inst:z};return{...X}}function Kj($){return Object.entries($).filter(([X,Y])=>{return Number.isNaN(Number.parseInt(X,10))}).map((X)=>X[1])}class vE{constructor(...$){}}var CE=($,X)=>{$.name="$ZodError",Object.defineProperty($,"_zod",{value:$._zod,enumerable:!1}),Object.defineProperty($,"issues",{value:X,enumerable:!1}),Object.defineProperty($,"message",{get(){return JSON.stringify(X,PW,2)},enumerable:!0}),Object.defineProperty($,"toString",{value:()=>$.message,enumerable:!1})},s2=P("$ZodError",CE),GY=P("$ZodError",CE,{Parent:Error});function e2($,X=(Y)=>Y.message){let Y={},z=[];for(let G of $.issues)if(G.path.length>0)Y[G.path[0]]=Y[G.path[0]]||[],Y[G.path[0]].push(X(G));else z.push(X(G));return{formErrors:z,fieldErrors:Y}}function $G($,X){let Y=X||function(U){return U.message},z={_errors:[]},G=(U)=>{for(let W of U.issues)if(W.code==="invalid_union"&&W.errors.length)W.errors.map((Q)=>G({issues:Q}));else if(W.code==="invalid_key")G({issues:W.issues});else if(W.code==="invalid_element")G({issues:W.issues});else if(W.path.length===0)z._errors.push(Y(W));else{let Q=z,Z=0;while(Z<W.path.length){let H=W.path[Z];if(Z!==W.path.length-1)Q[H]=Q[H]||{_errors:[]};else Q[H]=Q[H]||{_errors:[]},Q[H]._errors.push(Y(W));Q=Q[H],Z++}}};return G($),z}function bW($,X){let Y=X||function(U){return U.message},z={errors:[]},G=(U,W=[])=>{var Q,Z;for(let H of U.issues)if(H.code==="invalid_union"&&H.errors.length)H.errors.map((O)=>G({issues:O},H.path));else if(H.code==="invalid_key")G({issues:H.issues},H.path);else if(H.code==="invalid_element")G({issues:H.issues},H.path);else{let O=[...W,...H.path];if(O.length===0){z.errors.push(Y(H));continue}let w=z,V=0;while(V<O.length){let D=O[V],N=V===O.length-1;if(typeof D==="string")w.properties??(w.properties={}),(Q=w.properties)[D]??(Q[D]={errors:[]}),w=w.properties[D];else w.items??(w.items=[]),(Z=w.items)[D]??(Z[D]={errors:[]}),w=w.items[D];if(N)w.errors.push(Y(H));V++}}};return G($),z}function jE($){let X=[];for(let Y of $)if(typeof Y==="number")X.push(`[${Y}]`);else if(typeof Y==="symbol")X.push(`[${JSON.stringify(String(Y))}]`);else if(/[^\w$]/.test(Y))X.push(`[${JSON.stringify(Y)}]`);else{if(X.length)X.push(".");X.push(Y)}return X.join("")}function fW($){let X=[],Y=[...$.issues].sort((z,G)=>z.path.length-G.path.length);for(let z of Y)if(X.push(`\u2716 ${z.message}`),z.path?.length)X.push(` \u2192 at ${jE(z.path)}`);return X.join(`
16
+ ${W.trace}`:"No previous disposal trace was found."),z.type){case"atom_family":case"mutable_atom_family":return $.defaults.get(z.key);case"readonly_pure_selector_family":case"writable_pure_selector_family":case"readonly_held_selector_family":case"writable_held_selector_family":{if($.defaults.has(z.key))return $.defaults.get(Y.family.key);let Q=x6($,z).default(U);return $.defaults.set(z.key,Q),Q}}}return E7($,x6($,Y))}var a1=class extends Map{deleted=new Set;source;constructor($){super();this.source=$}get($){if(super.has($))return super.get($);if(!this.deleted.has($)&&this.source.has($))return this.source.get($);return}set($,X){return this.deleted.delete($),super.set($,X)}hasOwn($){return super.has($)}has($){return!this.deleted.has($)&&(super.has($)||this.source.has($))}delete($){return this.deleted.add($),super.delete($)}},dC=($,X,Y,z)=>{let G=D$($),U={parent:G,child:null,on:G.on,loggers:G.loggers,logger:G.logger,config:G.config,atoms:new a1(G.atoms),atomsThatAreDefault:new Set(G.atomsThatAreDefault),families:new a1(G.families),joins:new a1(G.joins),operation:{open:!1},readonlySelectors:new a1(G.readonlySelectors),timelines:new a1(G.timelines),timelineTopics:new E4(G.timelineTopics.toJSON()),trackers:new Map,transactions:new a1(G.transactions),selectorAtoms:new E4(G.selectorAtoms.toJSON()),selectorGraph:new E4(G.selectorGraph.toJSON(),{makeContentKey:(...H)=>H.sort().join(":")}),writableSelectors:new a1(G.writableSelectors),valueMap:new a1(G.valueMap),defaults:G.defaults,disposalTraces:$.disposalTraces.copy(),molecules:new a1(G.molecules),moleculeGraph:new E4(G.moleculeGraph.toJSON(),{makeContentKey:G.moleculeGraph.makeContentKey}),moleculeData:new E4(G.moleculeData.toJSON(),{makeContentKey:G.moleculeData.makeContentKey}),moleculeJoins:new E4(G.moleculeJoins.toJSON(),{makeContentKey:G.moleculeJoins.makeContentKey}),miscResources:new a1(G.miscResources)},W=mC($,X),Q={phase:"building",update:{type:"transaction_update",key:X,id:z,epoch:W===void 0?NaN:W+1,updates:[],params:Y,output:void 0},toolkit:{get:(...H)=>b1(Z,...H),set:(...H)=>{Y1(Z,...H)},run:(H,O=GE())=>eU(Z,H,O),find:(...H)=>p$($,...H),json:(H)=>n8(Z,H),dispose:(...H)=>{aX(Z,...H)},env:()=>pC(Z)}},Z=Object.assign(U,{transactionMeta:Q});return G.child=Z,$.logger.info("\uD83D\uDEEB","transaction",X,"Building transaction with params:",Y),Z};function XW($,X){let Y={key:X.key,type:"transaction",run:(U,W)=>{let Q=dC($,X.key,U,W);try{let Z=D$($),{toolkit:H}=Q.transactionMeta,O=X.do(H,...U);return cC(O,Z),O}catch(Z){throw JC(z),$.logger.warn("\uD83D\uDCA5","transaction",X.key,"caught:",Z),Z}},install:(U)=>XW(U,X),subject:new g$},z=D$($);z.transactions.set(Y.key,Y);let G=L0(Y);return $.on.transactionCreation.next(G),G}var QE=class{parent=null;child=null;valueMap=new Map;defaults=new Map;atoms=new Map;writableSelectors=new Map;readonlySelectors=new Map;atomsThatAreDefault=new Set;selectorAtoms=new E4({between:["selectorKey","atomKey"],cardinality:"n:n"});selectorGraph=new E4({between:["upstreamSelectorKey","downstreamSelectorKey"],cardinality:"n:n"},{makeContentKey:(...$)=>$.sort().join(":")});trackers=new Map;families=new Map;joins=new Map;transactions=new Map;transactionMeta={epoch:new Map,actionContinuities:new E4({between:["continuity","action"],cardinality:"1:n"})};timelines=new Map;timelineTopics=new E4({between:["timelineKey","topicKey"],cardinality:"1:n"});disposalTraces=new EC(100);molecules=new Map;moleculeJoins=new E4({between:["moleculeKey","joinKey"],cardinality:"n:n"},{makeContentKey:(...$)=>$.sort().join(":")});moleculeGraph=new E4({between:["upstreamMoleculeKey","downstreamMoleculeKey"],cardinality:"n:n"},{makeContentKey:(...$)=>$.sort().join(":")});moleculeData=new E4({between:["moleculeKey","stateFamilyKey"],cardinality:"n:n"},{makeContentKey:(...$)=>$.sort().join(":")});miscResources=new Map;on={atomCreation:new g$,atomDisposal:new g$,selectorCreation:new g$,selectorDisposal:new g$,timelineCreation:new g$,transactionCreation:new g$,transactionApplying:new LC(null),operationClose:new g$,moleculeCreation:new g$,moleculeDisposal:new g$};operation={open:!1};config={name:"IMPLICIT_STORE",lifespan:"ephemeral"};loggers=[new XE("warn",($,X,Y)=>!$Y(Y))];logger={error:(...$)=>{for(let X of this.loggers)X.error(...$)},info:(...$)=>{for(let X of this.loggers)X.info(...$)},warn:(...$)=>{for(let X of this.loggers)X.warn(...$)}};constructor($,X=null){if(this.config={...X?.config,...$},X!==null){if(this.valueMap=new Map(X?.valueMap),this.operation={...X?.operation},H8(X))this.transactionMeta={epoch:new Map(X?.transactionMeta.epoch),actionContinuities:new E4(X?.transactionMeta.actionContinuities.toJSON())};for(let[,z]of X.families){if(z.internalRoles?.includes("mutable")||z.internalRoles?.includes("join"))continue;z.install(this)}let Y=new Set;for(let[,z]of X.atoms){if(Y.has(z.key))continue;if(z.install(this),z.type==="mutable_atom"){let G=n8(X,z),U=JW(z);Y.add(G.key),Y.add(U.key)}}for(let[,z]of X.readonlySelectors)z.install(this);for(let[,z]of X.writableSelectors){if(Y.has(z.key))continue;z.install(this)}for(let[,z]of X.transactions)z.install(this);for(let[,z]of X.timelines)z.install(this)}}},R6={get STORE(){return globalThis.ATOM_IO_IMPLICIT_STORE??=new QE({name:"IMPLICIT_STORE",lifespan:"ephemeral"}),globalThis.ATOM_IO_IMPLICIT_STORE}};function x6($,X){let Y,z=$;while(z!==null){switch(X.type){case"atom":case"mutable_atom":Y=z.atoms.get(X.key);break;case"writable_pure_selector":case"writable_held_selector":Y=z.writableSelectors.get(X.key);break;case"readonly_pure_selector":case"readonly_held_selector":Y=z.readonlySelectors.get(X.key);break;case"atom_family":case"mutable_atom_family":case"writable_pure_selector_family":case"readonly_pure_selector_family":case"writable_held_selector_family":case"readonly_held_selector_family":Y=z.families.get(X.key);break;case"timeline":Y=z.timelines.get(X.key);break;case"transaction":Y=z.transactions.get(X.key);break}if(Y)return Y;z=z.child}throw new HW(X,$)}var lC=($,X)=>{let Y=D$($);if(Y.operation.open)return Y.operation.prev.get(X.key);return Y.valueMap.get(X.key)};var VE=($,X)=>{let Y=D$($);return PC(X,$).map((G)=>{let U=Y.atoms.get(G);if(U===void 0)throw new Error(`Atom "${G}", a dependency of selector "${X.key}", not found in store "${$.config.name}".`);return U.subject.subscribe(`${X.type}:${X.key}`,(W)=>{$.logger.info("\uD83D\uDCE2",X.type,X.key,"root",G,"went",W.oldValue,"->",W.newValue);let Q=lC(Y,X),Z=E7(Y,X);$.logger.info("\u2728",X.type,X.key,"went",Q,"->",Z),X.subject.next({newValue:Z,oldValue:Q})})})};function m2($,X,Y,z){function G(w){if($.operation.open){let V=$.on.operationClose.subscribe(`state subscription ${Y}`,()=>{V(),z(w)})}else z(w)}let U=x6($,X);$.logger.info("\uD83D\uDC40",U.type,U.key,`Adding subscription "${Y}"`);let W=U.type==="writable_pure_selector"||U.type==="readonly_pure_selector",Q=null,Z=G;if(W)Q=VE($,U),Z=(w)=>{if(Q)Q.length=0,Q.push(...VE($,U));G(w)};let H=U.subject.subscribe(Y,Z);return()=>{if($.logger.info("\uD83D\uDE48",U.type,U.key,`Removing subscription "${Y}"`),H(),Q)for(let w of Q)w()}}var iC=($,X,Y,z)=>{let G=x6($,X);$.logger.info("\uD83D\uDC40","timeline",X.key,`Adding subscription "${Y}"`);let U=G.subject.subscribe(Y,z);return()=>{$.logger.info("\uD83D\uDE48","timeline",X.key,`Removing subscription "${Y}" from timeline`),U()}};var FW=class{initializeState($,X){let Y=`*${$.key}`;X.atoms.delete(Y),X.valueMap.delete(Y);let z=$.family?{key:`*${$.family.key}`,subKey:$.family.subKey}:void 0,G=o8(X,{key:Y,default:null},z);if(X.parent?.valueMap.has(Y)){let U=X.parent.valueMap.get(Y);X.valueMap.set(Y,U)}return G}unsubscribeFromInnerValue;unsubscribeFromState;observeCore($,X,Y){let z=`tracker:${Y.config.name}:${t6(Y)?Y.transactionMeta.update.key:"main"}:${$.key}`,G=b1(Y,$);this.unsubscribeFromInnerValue=G.subscribe(z,(U)=>{Y1(Y,X,U)}),this.unsubscribeFromState=m2(Y,$,z,(U)=>{if(U.newValue!==U.oldValue)this.unsubscribeFromInnerValue(),this.unsubscribeFromInnerValue=U.newValue.subscribe(z,(W)=>{Y1(Y,X,W)})})}updateCore($,X,Y){let z=`tracker:${Y.config.name}:${t6(Y)?Y.transactionMeta.update.key:"main"}:${$.key}`;m2(Y,X,z,({newValue:G,oldValue:U})=>{let W=Y.timelineTopics.getRelatedKey(X.key);if(W){if(Y.timelines.get(W)?.timeTraveling){let H=iC(Y,{key:W,type:"timeline"},z,(O)=>{H(),Y1(Y,$,(w)=>{if(O==="redo"&&G)w.do(G);else if(O==="undo"&&U)w.undo(U);return w})});return}}let Q=Y.on.operationClose.subscribe(z,()=>{Q();let Z=b1(Y,$),H=G===null?-1:Z.getUpdateNumber(G),O=H-Z.cacheUpdateNumber;if(G&&O===1)Y1(Y,$,(w)=>(w.do(G),w));else Y.logger.info("\u274C","mutable_atom",$.key,`could not be updated. Expected update number ${Z.cacheUpdateNumber+1}, but got ${H}`)})})}mutableState;latestUpdateState;[Symbol.dispose];constructor($,X){this.mutableState=$;let Y=D$(X);this.latestUpdateState=this.initializeState($,Y),this.observeCore($,this.latestUpdateState,Y),this.updateCore($,this.latestUpdateState,Y),Y.trackers.set($.key,this),this[Symbol.dispose]=()=>{this.unsubscribeFromInnerValue(),this.unsubscribeFromState(),Y.trackers.delete($.key)}}};function MW($,X,Y){$.logger.info("\uD83D\uDD28","atom",X.key,`creating in store "${$.config.name}"`);let z=D$($),{key:G,default:U}=X,W=z.atoms.get(G),Q="mutable_atom";if(W&&W.type===Q)return $.logger.error("\u274C",Q,G,"Tried to create atom, but it already exists in the store."),L0(W);let Z=new g$,H={...X,type:Q,install:(V)=>{return V.logger.info("\uD83D\uDEE0\uFE0F","atom",G,`installing in store "${V.config.name}"`),MW(V,X,Y)},subject:Z};if(Y)H.family=Y;let O=U();z.atoms.set(H.key,H),qE($,G),s1(z,G,O,Z);let w=L0(H);if(X.effects){let V=0,D=[];for(let N of X.effects){let F=N({setSelf:(L)=>{Y1($,w,L)},onSet:(L)=>m2($,w,`effect[${V}]`,L)});if(F)D.push(F);++V}H.cleanup=()=>{for(let N of D)N()}}if(new FW(w,$),!Y)sN(w,X,$);return w}var rC=class{trackers=new Map;latestUpdateAtoms;mutableAtoms;constructor($,X){let Y=c2(X,{key:`*${$.key}`,default:null},["mutable","updates"]);this.latestUpdateAtoms=x6(X,Y),this.mutableAtoms=$,this.mutableAtoms.subject.subscribe(`store=${X.config.name}::tracker-atom-family`,(z)=>{let{type:G,token:U}=z;if(U.family){let W=g4(U.family.subKey);switch(G){case"state_creation":this.trackers.set(W,new FW(U,X));break;case"state_disposal":{let Q=this.trackers.get(W);if(Q)Q[Symbol.dispose](),this.trackers.delete(W)}break}}})}};function LW($,X,Y){let z={key:X.key,type:"mutable_atom_family"},G=$.families.get(X.key);if(G)$.logger.error("\u2757","mutable_atom_family",X.key,`Overwriting an existing ${r8(G)} "${G.key}" in store "${$.config.name}". You can safely ignore this warning if it is due to hot module replacement.`);let U=new g$,Q=Object.assign((Z)=>{let H=d$(Z),O={key:X.key,subKey:H},w=`${X.key}(${H})`,V=D$($),D={key:w,default:()=>X.default(Z),toJson:X.toJson,fromJson:X.fromJson,mutable:!0};if(X.effects)D.effects=X.effects(Z);let N=MW(V,D,O);return U.next({type:"state_creation",token:N}),N},z,{subject:U,install:(Z)=>LW(Z,X),toJson:X.toJson,fromJson:X.fromJson,internalRoles:Y});return $.families.set(X.key,Q),eN($,Q,X),new rC(Q,$),z}var DE=($,X)=>{let Y=D$(X),z=`${$.key}:JSON`;return Y.families.get(z)},n8=($,X)=>{if(X.family){let z=D$($),U={key:`${X.family.key}:JSON`,type:"writable_pure_selector_family"},W=x6(z,U),Q=JSON.parse(X.family.subKey);return p$($,W,Q)}return{type:"writable_pure_selector",key:`${X.key}:JSON`}};var JW=($)=>{let Y={type:"atom",key:`*${$.key}`};if($.family)Y.family={key:`*${$.family.key}`,subKey:$.family.subKey};return Y};function nC($){return typeof $==="object"&&$!==null&&"do"in $&&"undo"in $&&"subscribe"in $}function ZW($,X,Y){let z=Y.valueMap.get(X.key),G=$.valueMap.get(X.key);if(z!==G)return G;if(z===void 0)return X.default();Y.logger.info("\uD83D\uDCC3","atom",X.key,"copying");let U=X.toJson(z),W=X.fromJson(U);return $.valueMap.set(X.key,W),new FW(X,Y),W}function s1($,X,Y,z){let G=$.valueMap.get(X);if(G instanceof GW){let U=G;if(Y instanceof Promise)return U;return $.valueMap.set(X,Y),Y}if(Y instanceof Promise){let U=new GW(Y);return $.valueMap.set(X,U),U.then((W)=>{if($.valueMap.get(X)===U){s1($,X,W,z);let Z=$.atoms.get(X);if(Z)zW($,Z),WW($,Z),UW($);else{let H=$.writableSelectors.get(X)??$.readonlySelectors.get(X);if(H)zW($,H),KC($,H),UW($)}z.next({newValue:W,oldValue:U})}}).catch((W)=>{$.logger.error("\uD83D\uDCA5","state",X,"rejected:",W)}),U}return $.valueMap.set(X,Y),Y}var oC=($,X)=>{let Y=X.valueMap.get($.key);if($.type==="mutable_atom"&&t6(X)){let{parent:z}=X;Y=ZW(X,$,z)}return Y},_E=($,X)=>{let Y=X.valueMap.get($);if(Y instanceof GW){let z=Y,G=X.writableSelectors.get($)??X.readonlySelectors.get($);if(G)z.use(G.get());return}if(X.operation.open)X.operation.prev.set($,Y);X.valueMap.delete($),X.logger.info("\uD83D\uDDD1","state",$,"evicted")},tC=($,X)=>{return D$($).atomsThatAreDefault.has(X)},qE=($,X)=>{let Y=D$($);Y.atomsThatAreDefault=new Set(Y.atomsThatAreDefault).add(X)},aC=($,X)=>{let Y=D$($);Y.atomsThatAreDefault=new Set(D$($).atomsThatAreDefault),Y.atomsThatAreDefault.delete(X)};function o8($,X,Y){let{key:G,default:U}=X;$.logger.info("\uD83D\uDD28","atom",G,`creating in store "${$.config.name}"`);let W=D$($),Q=W.atoms.get(G);if(Q&&Q.type==="atom")return $.logger.error("\u274C","atom",G,"Tried to create atom, but it already exists in the store."),L0(Q);let Z=new g$,H={...X,type:"atom",install:(V)=>{return V.logger.info("\uD83D\uDEE0\uFE0F","atom",G,`installing in store "${V.config.name}"`),o8(V,X,Y)},subject:Z};if(Y)H.family=Y;let O=U;if(U instanceof Function)O=U();W.atoms.set(G,H),qE($,G),s1(W,G,O,Z);let w=L0(H);if(X.effects){let V=0,D=[];for(let N of X.effects){let F=N({setSelf:(L)=>{Y1($,w,L)},onSet:(L)=>m2($,w,`effect[${V}]`,L)});if(F)D.push(F);++V}H.cleanup=()=>{for(let N of D)N()}}return w}function ZE($,X){if("mutable"in X){let G=MW($,X,void 0);return $.on.atomCreation.next(G),G}let z=o8($,X,void 0);return $.on.atomCreation.next(z),z}function TE($,X){let Y=D$($),{key:z,family:G}=X,U=x6(Y,X);if(!G)$.logger.error("\u274C","atom",z,"Standalone atoms cannot be disposed.");else{U.cleanup?.();let W=$.valueMap.get(U.key),Q=x6($,{key:G.key,type:"atom_family"}),Z={type:"state_disposal",subType:"atom",token:X,value:W};Q.subject.next(Z);let H=t6(Y);if(Y.atoms.delete(z),Y.valueMap.delete(z),Y.selectorAtoms.delete(z),Y.atomsThatAreDefault.delete(z),$.timelineTopics.delete(z),X.type==="mutable_atom"){let O=JW(X);TE($,O),$.trackers.delete(z)}if($.logger.info("\uD83D\uDD25","atom",z,"deleted"),H&&Y.transactionMeta.phase==="building"){let O=Y.transactionMeta.update.updates.at(-1);if(!(O?.type==="molecule_disposal"&&O.values.some(([D])=>D===U.family?.key)))Y.transactionMeta.update.updates.push(Z)}else $.on.atomDisposal.next(X)}}var YW=class{toolkit;options;defaultContent;molecules=new Map;relations;states;core;transact($,X){let Y=this.toolkit;this.toolkit=$,X(this),this.toolkit=Y}store;realm;[Symbol.dispose](){}constructor($,X,Y=R6.STORE){this.store=Y,this.realm=new YE(Y),this.options=$,this.defaultContent=X,this.store.miscResources.set(`join:${$.key}`,this),this.realm.allocate("root",$.key),this.toolkit={get:(..._)=>b1(Y,..._),set:(..._)=>{Y1(Y,..._)},find:(..._)=>p$(Y,..._),json:(_)=>n8(Y,_)};let z=$.between[0],G=$.between[1],U=LW(Y,{key:`${$.key}/relatedKeys`,default:()=>new y4,mutable:!0,fromJson:(_)=>y4.fromJSON(_),toJson:(_)=>_.toJSON()},["join","relations"]);this.core={relatedKeysAtoms:U};let W=({get:_},v)=>_(U,v),Q=({set:_},v,x)=>{if(!this.store.molecules.has(d$(v)))this.realm.allocate($.key,v);_(U,v,(S)=>S.add(x)),_(U,x,(S)=>S.add(v))},Z=({set:_},v,x)=>{_(U,v,(S)=>{return S.delete(x),S}),_(U,x,(S)=>{return S.delete(v),S})},H=(_,v,x)=>{let{find:S,get:m,set:$$}=_,I=S(U,v),Y$=m(I);for(let l of Y$){if(x.includes(l))continue;$$(U,l,(K$)=>{return K$.delete(v),K$})}$$(I,(l)=>{return l.transaction((U$)=>{U$.clear();for(let K$ of x){let b$=W(_,K$),K6=b$.has(v);if(this.relations.cardinality==="1:n"){let Y4=[];for(let u of b$){if(u===v)continue;let Q$=W(_,u);if(Q$.delete(K$),Q$.size===0)Y4.push(u)}if(!K6&&b$.size>0)b$.clear();for(let u of Y4){let Q$=[K$,u].sort(),f$=`"${Q$[0]}:${Q$[1]}"`;this.molecules.delete(f$)}}if(!K6)b$.add(v);U$.add(K$)}return!0}),l})},O=(_,v,x)=>{let{set:S}=_;S(U,v,(m)=>{return m.transaction(($$)=>{for(let I of x)$$.add(I);return!0}),m});for(let m of x)S(U,m,($$)=>{return $$.add(v),$$});return!0},w=(_,v,x)=>{let S=W(_,v);return x?S.has(x):S.size>0},V={getRelatedKeys:(_)=>W(this.toolkit,_),addRelation:(_,v)=>{this.store.moleculeJoins.set(_,$.key),this.store.moleculeJoins.set(v,$.key),Q(this.toolkit,_,v)},deleteRelation:(_,v)=>{Z(this.toolkit,_,v)},replaceRelationsSafely:(_,v)=>{H(this.toolkit,_,v)},replaceRelationsUnsafely:(_,v)=>{O(this.toolkit,_,v)},has:(_,v)=>w(this.toolkit,_,v)},D,N;if(X){N=c2(Y,{key:`${$.key}/content`,default:X},["join","content"]);let _=({get:S},m)=>S(N,m),v=({set:S},m,$$)=>{S(N,m,$$)};D=Object.assign(V,{getContent:(S)=>{return _(this.toolkit,S)},setContent:(S,m)=>{v(this.toolkit,S,m)},deleteContent:(S)=>{this.realm.deallocate(S)}})}else D=V;let F=new E4($,{externalStore:D,isAType:$.isAType,isBType:$.isBType,makeContentKey:(..._)=>{let[v,x]=_,S=_.sort(),m=`${S[0]}:${S[1]}`,$$=Y.molecules.get(d$(v)),I=Y.molecules.get(d$(x));if(!$$)this.realm.allocate($.key,v);if(!I)this.realm.allocate($.key,x);return this.realm.allocate(v,m,"all"),this.realm.claim(x,m),this.store.moleculeJoins.set(m,$.key),m}}),L=()=>i8(Y,{key:`${$.key}/singleRelatedKey`,get:(_)=>({get:v})=>{let x=v(U,_);for(let S of x)return S;return null}},["join","keys"]),K=()=>{return i8(Y,{key:`${$.key}/multipleRelatedKeys`,get:(_)=>({get:v})=>{let x=DE(U,Y);return v(x,_).members}},["join","keys"])},q=()=>i8(Y,{key:`${$.key}/singleRelatedEntry`,get:(_)=>({get:v})=>{let x=v(U,_);for(let S of x){let m=F.isAType?.(_)?_:void 0,$$=m===void 0?_:void 0;m??=S,$$??=S;let I=F.makeContentKey(m,$$),Y$=v(N,I);return[S,Y$]}return null}},["join","entries"]),R=()=>i8(Y,{key:`${$.key}/multipleRelatedEntries`,get:(_)=>({get:v})=>{let x=DE(U,Y);return v(x,_).members.map((m)=>{let $$=F.isAType?.(_)?_:void 0,I=$$===void 0?_:void 0;$$??=m,I??=m;let Y$=F.makeContentKey($$,I),l=v(N,Y$);return[m,l]})}},["join","entries"]);switch($.cardinality){case"1:1":{let _=L(),v=`${z}KeyOf${U6(G)}`,x=`${G}KeyOf${U6(z)}`,S={[v]:_,[x]:_},m;if(X){let $$=q(),I=`${z}EntryOf${U6(G)}`,Y$=`${G}EntryOf${U6(z)}`,l={[I]:$$,[Y$]:$$};m=Object.assign(S,l)}else m=S;this.relations=F,this.states=m;break}case"1:n":{let _=L(),v=K(),x=`${z}KeyOf${U6(G)}`,S=`${G}KeysOf${U6(z)}`,m={[x]:_,[S]:v},$$;if(X){let I=q(),Y$=R(),l=`${z}EntryOf${U6(G)}`,U$=`${G}EntriesOf${U6(z)}`,K$={[l]:I,[U$]:Y$};$$=Object.assign(m,K$)}else $$=m;this.relations=F,this.states=$$;break}case"n:n":{let _=K(),v=`${z}KeysOf${U6(G)}`,x=`${G}KeysOf${U6(z)}`,S={[v]:_,[x]:_},m;if(X){let $$=R(),I=`${z}EntriesOf${U6(G)}`,Y$=`${G}EntriesOf${U6(z)}`,l={[I]:$$,[Y$]:$$};m=Object.assign(S,l)}else m=S;this.relations=F,this.states=m}}}};function AW($,X){let Y=X.joins.get($.key);if(Y===void 0){let G=R6.STORE.joins.get($.key);if(G===void 0)throw new Error(`Join "${$.key}" not found in store "${X.config.name}"`);Y=new YW(G.options,G.defaultContent,X),X.joins.set($.key,Y)}return Y}function y2($,X,Y){let z=AW($,Y),G=D$(Y);if(t6(G)){let{toolkit:U}=G.transactionMeta;z.transact(U,({relations:W})=>{X(W)})}else X(z.relations)}function HE($,X,Y){let z=AW($,Y),G;switch($.cardinality){case"1:1":{let U=`${$.a}KeyOf${U6($.b)}`,W=`${$.b}KeyOf${U6($.a)}`;G={get[U](){let Z=z.states[U];return p$(Y,Z,X)},get[W](){let Z=z.states[W];return p$(Y,Z,X)}};let Q=`${$.a}EntryOf${U6($.b)}`;if(Q in z.states){let Z=`${$.b}EntryOf${U6($.a)}`;Object.assign(G,{get[Q](){let H=z.states[Q];return p$(Y,H,X)},get[Z](){let H=z.states[Z];return p$(Y,H,X)}})}break}case"1:n":{let U=`${$.a}KeyOf${U6($.b)}`,W=`${$.b}KeysOf${U6($.a)}`;G={get[U](){let Z=z.states[U];return p$(Y,Z,X)},get[W](){let Z=z.states[W];return p$(Y,Z,X)}};let Q=`${$.a}EntryOf${U6($.b)}`;if(Q in z.states){let Z=`${$.b}EntriesOf${U6($.a)}`;Object.assign(G,{get[Q](){let H=z.states[Q];return p$(Y,H,X)},get[Z](){let H=z.states[Z];return p$(Y,H,X)}})}break}case"n:n":{let U=`${$.a}KeysOf${U6($.b)}`,W=`${$.b}KeysOf${U6($.a)}`;G={get[U](){let Z=z.states[U];return p$(Y,Z,X)},get[W](){let Z=z.states[W];return p$(Y,Z,X)}};let Q=`${$.a}EntriesOf${U6($.b)}`;if(Q in z.states){let Z=`${$.b}EntriesOf${U6($.a)}`;Object.assign(G,{get[Q](){let H=z.states[Q];return p$(Y,H,X)},get[Z](){let H=z.states[Z];return p$(Y,H,X)}})}}}return G}function OE($,X){return AW($,X).core.relatedKeysAtoms}function $Y($){return $.startsWith("\uD83D\uDD0D ")}var sC=class extends Map{set($,X){if(this.has($))return console.warn("Tried to set a key that already exists in an InvariantMap",{key:$,value:X}),this;return super.set($,X)}clear(){throw new Error("Cannot clear an InvariantMap")}},Qm=class ${type="continuity";globals=[];actions=[];perspectives=[];key;constructor(X){this.key=X}static existing=new sC;static create(X,Y){let z=new $(X),{type:G,globals:U,actions:W,perspectives:Q}=Y(z),Z={type:G,key:X,globals:U,actions:W,perspectives:Q};return $.existing.set(X,Z),Z}add(...X){switch(X[0].type){case"atom":case"mutable_atom":this.globals.push(...X);break;case"transaction":this.actions.push(...X);break;case"atom_family":case"mutable_atom_family":{let[z,G]=X;this.perspectives.push({type:"realtime_perspective",resourceAtoms:z,viewAtoms:G})}break}return this}};var Zm=tX({key:"usersInRoomIndex",mutable:!0,default:()=>new y4,toJson:($)=>$.toJSON(),fromJson:($)=>y4.fromJSON($)}),KW=tX({key:"roomIndex",default:()=>new y4,mutable:!0,toJson:($)=>$.toJSON(),fromJson:($)=>y4.fromJSON($)}),eC={enteredAtEpoch:0},p2=D7({key:"usersInRooms",between:["room","user"],cardinality:"1:n",isAType:($)=>typeof $==="string",isBType:($)=>typeof $==="string"},eC),Hm=N7({key:"usersInMyRoomView",get:($)=>({find:X})=>{let Y=$E(p2);return[X(Y,$)]}});import{spawn as $j}from"child_process";var _W=class{listeners;globalListeners;handleEvent($,...X){for(let z of this.globalListeners)z($,...X);let Y=this.listeners.get($);if(Y)for(let z of Y)z(...X)}id="no_id_retrieved";emit;constructor($){this.emit=$,this.listeners=new Map,this.globalListeners=new Set}on($,X){let Y=this.listeners.get($);if(Y)Y.add(X);else this.listeners.set($,new Set([X]));return this}onAny($){return this.globalListeners.add($),this}off($,X){let Y=this.listeners.get($);if(Y)if(X)Y.delete(X);else this.listeners.delete($);return this}offAny($){return this.globalListeners.delete($),this}},Xj=class extends _W{incompleteData="";unprocessedEvents=[];incompleteLog="";unprocessedLogs=[];id="#####";process;key;logger;handleLog($){if(Array.isArray($)){let[X,...Y]=$;switch(X){case"i":this.logger.info(...Y);break;case"w":this.logger.warn(...Y);break;case"e":this.logger.error(...Y);break;default:return}}}constructor($,X,Y){super((z,...G)=>{let U=JSON.stringify([z,...G])+"\x03",W=(Q)=>{if(Q.code==="EPIPE")console.error("EPIPE error during write",this.process.stdin);this.process.stdin.removeListener("error",W)};return this.process.stdin.once("error",W),this.process.stdin.write(U),this});if(this.process=$,this.key=X,this.logger=Y??{info:(...z)=>{console.info(this.id,this.key,...z)},warn:(...z)=>{console.warn(this.id,this.key,...z)},error:(...z)=>{console.error(this.id,this.key,...z)}},this.process.stdout.on("data",(z)=>{let G=z.toString();if(G==="ALIVE")return;this.unprocessedEvents.push(...G.split("\x03"));let U=this.unprocessedEvents.shift();this.incompleteData+=U??"";try{if(this.incompleteData.startsWith("error"))console.log("\u2757",this.incompleteData);let W=g4(this.incompleteData);this.handleEvent(...W);while(this.unprocessedEvents.length>0){let Q=this.unprocessedEvents.shift();if(Q){if(this.unprocessedEvents.length===0)this.incompleteData=Q;W=g4(Q),this.handleEvent(...W)}}this.incompleteData=""}catch(W){console.warn("\u26A0\uFE0F----------------\u26A0\uFE0F"),console.warn(this.incompleteData),console.warn("\u26A0\uFE0F----------------\u26A0\uFE0F"),console.error(W)}}),this.process.stderr.on("data",(z)=>{let G=z.toString();this.unprocessedLogs.push(...G.split("\x03"));let U=this.unprocessedLogs.shift();this.incompleteLog+=U??"";try{let W=g4(this.incompleteLog);this.handleLog(W);while(this.unprocessedLogs.length>0)if(this.incompleteLog=this.unprocessedLogs.shift()??"",this.incompleteLog)W=g4(this.incompleteLog),this.handleLog(W)}catch(W){console.error("\u274C\u274C\u274C"),console.error(this.incompleteLog),console.error(W),console.error("\u274C\u274C\u274C\uFE0F")}}),$.pid)this.id=$.pid.toString()}},Yj=class extends _W{in;out;id="no_id_retrieved";disposalFunctions=[];constructor($){super((...X)=>{return this.out.next(X),this});this.id=$,this.in=new g$,this.out=new g$,this.in.subscribe("socket",(X)=>{this.handleEvent(...X)})}dispose(){for(let $ of this.disposalFunctions)$()}},RE=class extends _W{incompleteData="";unprocessedEvents=[];relays;relayServices;process;id="#####";log(...$){this.process.stderr.write(d$($.map((X)=>X instanceof y4?`{ ${X.toJSON().members.join(" | ")} }`:X))+"\x03")}logger={info:(...$)=>{this.log("i",...$)},warn:(...$)=>{this.log("w",...$)},error:(...$)=>{this.log("e",...$)}};constructor(){super(($,...X)=>{let Y=JSON.stringify([$,...X]);return this.process.stdout.write(Y+"\x03"),this});if(this.process=process,this.process.stdin.resume(),this.relays=new Map,this.relayServices=[],this.process.stdin.on("data",($)=>{let X=$.toString();this.unprocessedEvents.push(...X.split("\x03"));let Y=this.unprocessedEvents.shift();this.incompleteData+=Y??"";try{let z=g4(this.incompleteData);this.logger.info("\uD83C\uDFB0","received",z),this.handleEvent(...z);while(this.unprocessedEvents.length>0){let G=this.unprocessedEvents.shift();if(G){if(this.unprocessedEvents.length===0)this.incompleteData=G;let U=g4(G);this.handleEvent(...U)}}this.incompleteData=""}catch(z){if(z instanceof Error)this.logger.error("\u2757",z.message,z.cause,z.stack)}}),this.on("exit",()=>{this.logger.info("\uD83D\uDD25",this.id,'received "exit"'),process.exit(0)}),process.on("exit",($)=>{this.logger.info("\uD83D\uDD25",this.id,`exited with code ${$}`)}),process.on("end",()=>{this.logger.info("\uD83D\uDD25",this.id,"ended"),process.exit(0)}),process.on("SIGTERM",()=>{this.logger.error("\uD83D\uDD25",this.id,"terminated"),process.exit(0)}),process.on("SIGINT",()=>{this.logger.error("\uD83D\uDD25",this.id,"interrupted"),process.exit(0)}),process.pid)this.id=process.pid?.toString();this.on("user-joins",($)=>{this.logger.info("\uD83D\uDC64","user",$,"joined");let X=new Yj(`user:${$}`);this.relays.set($,X),this.logger.info("\uD83D\uDD17","attaching services:",`[${[...this.relayServices.keys()].join(", ")}]`);for(let Y of this.relayServices){let z=Y(X);if(z)X.disposalFunctions.push(z)}this.on(`user:${$}`,(...Y)=>{X.in.next(Y)}),X.out.subscribe("socket",(Y)=>{this.emit(...Y)})}),this.on("user-leaves",($)=>{let X=this.relays.get($);if(this.off(`relay:${$}`),X)X.dispose(),this.relays.delete($)}),process.stdout.write("ALIVE")}relay($){this.logger.info("\uD83D\uDD17","running relay method"),this.relayServices.push($)}},PE=f2({key:"roomArguments",default:["echo",["Hello World!"]]}),Gj=N7({key:"room",get:($)=>async({get:X,find:Y})=>{let z=Y(PE,$),G=X(z),[U,W]=G,Q=await new Promise((Z)=>{let H=$j(U,W,{env:process.env}),O=(w)=>{if(w.toString()==="ALIVE")H.stdout.off("data",O),Z(H)};H.stdout.on("data",O)});return new Xj(Q,$)}}),Jm=h2({key:"createRoom",do:({get:$,set:X,find:Y},z,G,U)=>{let W=U?[G,U]:[G],Q=Y(PE,z);X(Q,W),X(KW,(O)=>O.add(z));let Z=Y(Gj,z);return $(Z)}}),Am=h2({key:"joinRoom",do:($,X,Y,z)=>{let G={enteredAtEpoch:z};return y2(p2,(U)=>{U.set({room:X,user:Y},G)},$.env().store),G}}),Km=h2({key:"leaveRoom",do:($,X,Y)=>{y2(p2,(z)=>{z.delete({room:X,user:Y})},$.env().store)}}),_m=h2({key:"destroyRoom",do:($,X)=>{y2(p2,(Y)=>{Y.delete({room:X})},$.env().store),$.set(KW,(Y)=>(Y.delete(X),Y))}});var qm=f2({key:"redactor",default:{occlude:($)=>$}}),Tm=f2({key:"unacknowledgedUpdates",default:()=>[]}),Rm=f2({key:"sockets",default:null}),Pm=tX({key:"socketsIndex",mutable:!0,default:()=>new y4,toJson:($)=>$.toJSON(),fromJson:($)=>y4.fromJSON($)}),vm=tX({key:"usersIndex",mutable:!0,default:()=>new y4,toJson:($)=>$.toJSON(),fromJson:($)=>y4.fromJSON($)}),Cm=D7({key:"usersOfSockets",between:["user","socket"],cardinality:"1:1",isAType:($)=>$.startsWith("user::"),isBType:($)=>$.startsWith("socket::")});var Mz={};Z8(Mz,{xid:()=>GI,void:()=>TI,uuidv7:()=>tB,uuidv6:()=>oB,uuidv4:()=>nB,uuid:()=>rB,url:()=>aB,uppercase:()=>VG,unknown:()=>Zz,union:()=>Ez,undefined:()=>_I,ulid:()=>YI,uint64:()=>AI,uint32:()=>MI,tuple:()=>II,trim:()=>LG,treeifyError:()=>bW,transform:()=>dO,toUpperCase:()=>AG,toLowerCase:()=>JG,toJSONSchema:()=>OO,templateLiteral:()=>mI,symbol:()=>KI,superRefine:()=>uF,success:()=>gI,stringbool:()=>dI,stringFormat:()=>DI,string:()=>JO,strictObject:()=>CI,startsWith:()=>NG,size:()=>HG,setErrorMap:()=>nI,set:()=>kI,safeParseAsync:()=>LO,safeParse:()=>MO,registry:()=>S7,regexes:()=>e8,regex:()=>OG,refine:()=>mF,record:()=>FF,readonly:()=>kF,property:()=>XO,promise:()=>uI,prettifyError:()=>fW,preprocess:()=>iI,prefault:()=>vF,positive:()=>aH,pipe:()=>wz,partialRecord:()=>xI,parseAsync:()=>FO,parse:()=>EO,overwrite:()=>q0,optional:()=>Hz,object:()=>vI,number:()=>XF,nullish:()=>hI,nullable:()=>Oz,null:()=>WF,normalize:()=>MG,nonpositive:()=>eH,nonoptional:()=>CF,nonnegative:()=>$O,never:()=>Vz,negative:()=>sH,nativeEnum:()=>bI,nanoid:()=>eB,nan:()=>yI,multipleOf:()=>YX,minSize:()=>GX,minLength:()=>w8,mime:()=>FG,maxSize:()=>QY,maxLength:()=>ZY,map:()=>SI,lte:()=>A1,lt:()=>K0,lowercase:()=>wG,looseObject:()=>jI,locales:()=>WG,literal:()=>KF,length:()=>HY,lazy:()=>hF,ksuid:()=>zI,keyof:()=>PI,jwt:()=>VI,json:()=>lI,iso:()=>Wz,ipv6:()=>WI,ipv4:()=>UI,intersection:()=>NF,int64:()=>JI,int32:()=>FI,int:()=>AO,instanceof:()=>pI,includes:()=>DG,guid:()=>iB,gte:()=>u4,gt:()=>_0,globalRegistry:()=>e1,getErrorMap:()=>oI,function:()=>HO,formatError:()=>$G,float64:()=>EI,float32:()=>NI,flattenError:()=>e2,file:()=>fI,enum:()=>JF,endsWith:()=>EG,emoji:()=>sB,email:()=>lB,e164:()=>wI,discriminatedUnion:()=>BI,date:()=>RI,custom:()=>cI,cuid2:()=>XI,cuid:()=>$I,core:()=>T0,config:()=>P6,coerce:()=>nO,clone:()=>G1,cidrv6:()=>ZI,cidrv4:()=>QI,check:()=>yF,catch:()=>IF,boolean:()=>YF,bigint:()=>LI,base64url:()=>OI,base64:()=>HI,array:()=>mO,any:()=>qI,_default:()=>RF,_ZodString:()=>KO,ZodXID:()=>jO,ZodVoid:()=>OF,ZodUnknown:()=>ZF,ZodUnion:()=>uO,ZodUndefined:()=>zF,ZodUUID:()=>R0,ZodURL:()=>qO,ZodULID:()=>CO,ZodType:()=>P$,ZodTuple:()=>EF,ZodTransform:()=>pO,ZodTemplateLiteral:()=>bF,ZodSymbol:()=>GF,ZodSuccess:()=>jF,ZodStringFormat:()=>a$,ZodString:()=>qG,ZodSet:()=>LF,ZodRecord:()=>cO,ZodRealError:()=>OY,ZodReadonly:()=>SF,ZodPromise:()=>gF,ZodPrefault:()=>PF,ZodPipe:()=>rO,ZodOptional:()=>lO,ZodObject:()=>Nz,ZodNumberFormat:()=>wY,ZodNumber:()=>TG,ZodNullable:()=>qF,ZodNull:()=>UF,ZodNonOptional:()=>iO,ZodNever:()=>HF,ZodNanoID:()=>RO,ZodNaN:()=>xF,ZodMap:()=>MF,ZodLiteral:()=>AF,ZodLazy:()=>fF,ZodKSUID:()=>BO,ZodJWT:()=>gO,ZodIssueCode:()=>rI,ZodIntersection:()=>DF,ZodISOTime:()=>zz,ZodISODuration:()=>Uz,ZodISODateTime:()=>Yz,ZodISODate:()=>Gz,ZodIPv6:()=>xO,ZodIPv4:()=>IO,ZodGUID:()=>Qz,ZodFile:()=>_F,ZodError:()=>pB,ZodEnum:()=>_G,ZodEmoji:()=>TO,ZodEmail:()=>_O,ZodE164:()=>hO,ZodDiscriminatedUnion:()=>VF,ZodDefault:()=>TF,ZodDate:()=>Dz,ZodCustomStringFormat:()=>$F,ZodCustom:()=>Fz,ZodCatch:()=>BF,ZodCUID2:()=>vO,ZodCUID:()=>PO,ZodCIDRv6:()=>kO,ZodCIDRv4:()=>SO,ZodBoolean:()=>RG,ZodBigIntFormat:()=>yO,ZodBigInt:()=>PG,ZodBase64URL:()=>fO,ZodBase64:()=>bO,ZodArray:()=>wF,ZodAny:()=>QF,TimePrecision:()=>TH,NEVER:()=>qW,$output:()=>AH,$input:()=>KH,$brand:()=>TW});var T0={};Z8(T0,{version:()=>xQ,util:()=>n,treeifyError:()=>bW,toJSONSchema:()=>OO,toDotPath:()=>jE,safeParseAsync:()=>gW,safeParse:()=>hW,registry:()=>S7,regexes:()=>e8,prettifyError:()=>fW,parseAsync:()=>K7,parse:()=>J7,locales:()=>WG,isValidJWT:()=>rE,isValidBase64URL:()=>iE,isValidBase64:()=>eQ,globalRegistry:()=>e1,globalConfig:()=>d2,function:()=>HO,formatError:()=>$G,flattenError:()=>e2,config:()=>P6,clone:()=>G1,_xid:()=>l7,_void:()=>rH,_uuidv7:()=>g7,_uuidv6:()=>h7,_uuidv4:()=>f7,_uuid:()=>b7,_url:()=>y7,_uppercase:()=>VG,_unknown:()=>WY,_union:()=>KB,_undefined:()=>pH,_ulid:()=>d7,_uint64:()=>uH,_uint32:()=>bH,_tuple:()=>YO,_trim:()=>LG,_transform:()=>BB,_toUpperCase:()=>AG,_toLowerCase:()=>JG,_templateLiteral:()=>yB,_symbol:()=>cH,_success:()=>bB,_stringbool:()=>WO,_stringFormat:()=>QO,_string:()=>_H,_startsWith:()=>NG,_size:()=>HG,_set:()=>PB,_safeParseAsync:()=>q7,_safeParse:()=>_7,_regex:()=>OG,_refine:()=>UO,_record:()=>TB,_readonly:()=>gB,_property:()=>XO,_promise:()=>uB,_positive:()=>aH,_pipe:()=>hB,_parseAsync:()=>A7,_parse:()=>L7,_overwrite:()=>q0,_optional:()=>IB,_number:()=>jH,_nullable:()=>xB,_null:()=>dH,_normalize:()=>MG,_nonpositive:()=>eH,_nonoptional:()=>kB,_nonnegative:()=>$O,_never:()=>iH,_negative:()=>sH,_nativeEnum:()=>CB,_nanoid:()=>u7,_nan:()=>tH,_multipleOf:()=>YX,_minSize:()=>GX,_minLength:()=>w8,_min:()=>u4,_mime:()=>FG,_maxSize:()=>QY,_maxLength:()=>ZY,_max:()=>A1,_map:()=>RB,_lte:()=>A1,_lt:()=>K0,_lowercase:()=>wG,_literal:()=>jB,_length:()=>HY,_lazy:()=>mB,_ksuid:()=>i7,_jwt:()=>$z,_isoTime:()=>vH,_isoDuration:()=>CH,_isoDateTime:()=>RH,_isoDate:()=>PH,_ipv6:()=>n7,_ipv4:()=>r7,_intersection:()=>qB,_int64:()=>mH,_int32:()=>kH,_int:()=>IH,_includes:()=>DG,_guid:()=>ZG,_gte:()=>u4,_gt:()=>_0,_float64:()=>SH,_float32:()=>xH,_file:()=>GO,_enum:()=>vB,_endsWith:()=>EG,_emoji:()=>m7,_email:()=>k7,_e164:()=>e7,_discriminatedUnion:()=>_B,_default:()=>SB,_date:()=>nH,_custom:()=>zO,_cuid2:()=>p7,_cuid:()=>c7,_coercedString:()=>qH,_coercedNumber:()=>BH,_coercedDate:()=>oH,_coercedBoolean:()=>hH,_coercedBigint:()=>yH,_cidrv6:()=>t7,_cidrv4:()=>o7,_catch:()=>fB,_boolean:()=>fH,_bigint:()=>gH,_base64url:()=>s7,_base64:()=>a7,_array:()=>KG,_any:()=>lH,TimePrecision:()=>TH,NEVER:()=>qW,JSONSchemaGenerator:()=>Xz,JSONSchema:()=>aE,Doc:()=>v7,$output:()=>AH,$input:()=>KH,$constructor:()=>P,$brand:()=>TW,$ZodXID:()=>pQ,$ZodVoid:()=>VZ,$ZodUnknown:()=>UY,$ZodUnion:()=>x7,$ZodUndefined:()=>ZZ,$ZodUUID:()=>bQ,$ZodURL:()=>hQ,$ZodULID:()=>cQ,$ZodType:()=>F$,$ZodTuple:()=>XX,$ZodTransform:()=>GG,$ZodTemplateLiteral:()=>xZ,$ZodSymbol:()=>QZ,$ZodSuccess:()=>CZ,$ZodStringFormat:()=>i$,$ZodString:()=>$X,$ZodSet:()=>JZ,$ZodRegistry:()=>QG,$ZodRecord:()=>MZ,$ZodRealError:()=>GY,$ZodReadonly:()=>IZ,$ZodPromise:()=>SZ,$ZodPrefault:()=>PZ,$ZodPipe:()=>zG,$ZodOptional:()=>qZ,$ZodObject:()=>NZ,$ZodNumberFormat:()=>UZ,$ZodNumber:()=>B7,$ZodNullable:()=>TZ,$ZodNull:()=>HZ,$ZodNonOptional:()=>vZ,$ZodNever:()=>wZ,$ZodNanoID:()=>yQ,$ZodNaN:()=>BZ,$ZodMap:()=>LZ,$ZodLiteral:()=>KZ,$ZodLazy:()=>kZ,$ZodKSUID:()=>dQ,$ZodJWT:()=>GZ,$ZodIntersection:()=>FZ,$ZodISOTime:()=>rQ,$ZodISODuration:()=>nQ,$ZodISODateTime:()=>lQ,$ZodISODate:()=>iQ,$ZodIPv6:()=>tQ,$ZodIPv4:()=>oQ,$ZodGUID:()=>kQ,$ZodFunction:()=>ZO,$ZodFile:()=>_Z,$ZodError:()=>s2,$ZodEnum:()=>AZ,$ZodEmoji:()=>gQ,$ZodEmail:()=>fQ,$ZodE164:()=>YZ,$ZodDiscriminatedUnion:()=>EZ,$ZodDefault:()=>RZ,$ZodDate:()=>DZ,$ZodCustomStringFormat:()=>zZ,$ZodCustom:()=>bZ,$ZodCheckUpperCase:()=>RQ,$ZodCheckStringFormat:()=>zY,$ZodCheckStartsWith:()=>vQ,$ZodCheckSizeEquals:()=>JQ,$ZodCheckRegex:()=>qQ,$ZodCheckProperty:()=>jQ,$ZodCheckOverwrite:()=>IQ,$ZodCheckNumberFormat:()=>EQ,$ZodCheckMultipleOf:()=>NQ,$ZodCheckMinSize:()=>LQ,$ZodCheckMinLength:()=>KQ,$ZodCheckMimeType:()=>BQ,$ZodCheckMaxSize:()=>MQ,$ZodCheckMaxLength:()=>AQ,$ZodCheckLowerCase:()=>TQ,$ZodCheckLessThan:()=>R7,$ZodCheckLengthEquals:()=>_Q,$ZodCheckIncludes:()=>PQ,$ZodCheckGreaterThan:()=>P7,$ZodCheckEndsWith:()=>CQ,$ZodCheckBigIntFormat:()=>FQ,$ZodCheck:()=>w6,$ZodCatch:()=>jZ,$ZodCUID2:()=>uQ,$ZodCUID:()=>mQ,$ZodCIDRv6:()=>sQ,$ZodCIDRv4:()=>aQ,$ZodBoolean:()=>XG,$ZodBigIntFormat:()=>WZ,$ZodBigInt:()=>I7,$ZodBase64URL:()=>XZ,$ZodBase64:()=>$Z,$ZodAsyncError:()=>J0,$ZodArray:()=>YG,$ZodAny:()=>OZ});var qW=Object.freeze({status:"aborted"});function P($,X,Y){function z(Q,Z){var H;Object.defineProperty(Q,"_zod",{value:Q._zod??{},enumerable:!1}),(H=Q._zod).traits??(H.traits=new Set),Q._zod.traits.add($),X(Q,Z);for(let O in W.prototype)if(!(O in Q))Object.defineProperty(Q,O,{value:W.prototype[O].bind(Q)});Q._zod.constr=W,Q._zod.def=Z}let G=Y?.Parent??Object;class U extends G{}Object.defineProperty(U,"name",{value:$});function W(Q){var Z;let H=Y?.Parent?new U:this;z(H,Q),(Z=H._zod).deferred??(Z.deferred=[]);for(let O of H._zod.deferred)O();return H}return Object.defineProperty(W,"init",{value:z}),Object.defineProperty(W,Symbol.hasInstance,{value:(Q)=>{if(Y?.Parent&&Q instanceof Y.Parent)return!0;return Q?._zod?.traits?.has($)}}),Object.defineProperty(W,"name",{value:$}),W}var TW=Symbol("zod_brand");class J0 extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}var d2={};function P6($){if($)Object.assign(d2,$);return d2}var n={};Z8(n,{unwrapMessage:()=>l2,stringifyPrimitive:()=>r,required:()=>Aj,randomString:()=>wj,propertyKeyTypes:()=>o2,promiseAllObject:()=>Oj,primitiveTypes:()=>BW,prefixIssues:()=>m4,pick:()=>Ej,partial:()=>Jj,optionalKeys:()=>IW,omit:()=>Fj,numKeys:()=>Vj,nullish:()=>O8,normalizeParams:()=>d,merge:()=>Lj,jsonStringifyReplacer:()=>PW,joinValues:()=>h,issue:()=>kW,isPlainObject:()=>YY,isObject:()=>XY,getSizableOrigin:()=>t2,getParsedType:()=>Dj,getLengthableOrigin:()=>a2,getEnumValues:()=>i2,getElementAtPath:()=>Hj,floatSafeRemainder:()=>vW,finalizeIssue:()=>z1,extend:()=>Mj,escapeRegex:()=>A0,esc:()=>t8,defineLazy:()=>y$,createTransparentProxy:()=>Nj,clone:()=>G1,cleanRegex:()=>n2,cleanEnum:()=>Kj,captureStackTrace:()=>M7,cached:()=>r2,assignProp:()=>CW,assertNotEqual:()=>Uj,assertNever:()=>Qj,assertIs:()=>Wj,assertEqual:()=>zj,assert:()=>Zj,allowsEval:()=>jW,aborted:()=>a8,NUMBER_FORMAT_RANGES:()=>xW,Class:()=>vE,BIGINT_FORMAT_RANGES:()=>SW});function zj($){return $}function Uj($){return $}function Wj($){}function Qj($){throw new Error}function Zj($){}function i2($){let X=Object.values($).filter((z)=>typeof z==="number");return Object.entries($).filter(([z,G])=>X.indexOf(+z)===-1).map(([z,G])=>G)}function h($,X="|"){return $.map((Y)=>r(Y)).join(X)}function PW($,X){if(typeof X==="bigint")return X.toString();return X}function r2($){return{get value(){{let Y=$();return Object.defineProperty(this,"value",{value:Y}),Y}throw new Error("cached value already set")}}}function O8($){return $===null||$===void 0}function n2($){let X=$.startsWith("^")?1:0,Y=$.endsWith("$")?$.length-1:$.length;return $.slice(X,Y)}function vW($,X){let Y=($.toString().split(".")[1]||"").length,z=(X.toString().split(".")[1]||"").length,G=Y>z?Y:z,U=Number.parseInt($.toFixed(G).replace(".","")),W=Number.parseInt(X.toFixed(G).replace(".",""));return U%W/10**G}function y$($,X,Y){Object.defineProperty($,X,{get(){{let G=Y();return $[X]=G,G}throw new Error("cached value already set")},set(G){Object.defineProperty($,X,{value:G})},configurable:!0})}function CW($,X,Y){Object.defineProperty($,X,{value:Y,writable:!0,enumerable:!0,configurable:!0})}function Hj($,X){if(!X)return $;return X.reduce((Y,z)=>Y?.[z],$)}function Oj($){let X=Object.keys($),Y=X.map((z)=>$[z]);return Promise.all(Y).then((z)=>{let G={};for(let U=0;U<X.length;U++)G[X[U]]=z[U];return G})}function wj($=10){let Y="";for(let z=0;z<$;z++)Y+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return Y}function t8($){return JSON.stringify($)}var M7=Error.captureStackTrace?Error.captureStackTrace:(...$)=>{};function XY($){return typeof $==="object"&&$!==null&&!Array.isArray($)}var jW=r2(()=>{if(typeof navigator!=="undefined"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch($){return!1}});function YY($){if(XY($)===!1)return!1;let X=$.constructor;if(X===void 0)return!0;let Y=X.prototype;if(XY(Y)===!1)return!1;if(Object.prototype.hasOwnProperty.call(Y,"isPrototypeOf")===!1)return!1;return!0}function Vj($){let X=0;for(let Y in $)if(Object.prototype.hasOwnProperty.call($,Y))X++;return X}var Dj=($)=>{let X=typeof $;switch(X){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN($)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":if(Array.isArray($))return"array";if($===null)return"null";if($.then&&typeof $.then==="function"&&$.catch&&typeof $.catch==="function")return"promise";if(typeof Map!=="undefined"&&$ instanceof Map)return"map";if(typeof Set!=="undefined"&&$ instanceof Set)return"set";if(typeof Date!=="undefined"&&$ instanceof Date)return"date";if(typeof File!=="undefined"&&$ instanceof File)return"file";return"object";default:throw new Error(`Unknown data type: ${X}`)}},o2=new Set(["string","number","symbol"]),BW=new Set(["string","number","bigint","boolean","symbol","undefined"]);function A0($){return $.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function G1($,X,Y){let z=new $._zod.constr(X??$._zod.def);if(!X||Y?.parent)z._zod.parent=$;return z}function d($){let X=$;if(!X)return{};if(typeof X==="string")return{error:()=>X};if(X?.message!==void 0){if(X?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");X.error=X.message}if(delete X.message,typeof X.error==="string")return{...X,error:()=>X.error};return X}function Nj($){let X;return new Proxy({},{get(Y,z,G){return X??(X=$()),Reflect.get(X,z,G)},set(Y,z,G,U){return X??(X=$()),Reflect.set(X,z,G,U)},has(Y,z){return X??(X=$()),Reflect.has(X,z)},deleteProperty(Y,z){return X??(X=$()),Reflect.deleteProperty(X,z)},ownKeys(Y){return X??(X=$()),Reflect.ownKeys(X)},getOwnPropertyDescriptor(Y,z){return X??(X=$()),Reflect.getOwnPropertyDescriptor(X,z)},defineProperty(Y,z,G){return X??(X=$()),Reflect.defineProperty(X,z,G)}})}function r($){if(typeof $==="bigint")return $.toString()+"n";if(typeof $==="string")return`"${$}"`;return`${$}`}function IW($){return Object.keys($).filter((X)=>{return $[X]._zod.optin==="optional"&&$[X]._zod.optout==="optional"})}var xW={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},SW={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Ej($,X){let Y={},z=$._zod.def;for(let G in X){if(!(G in z.shape))throw new Error(`Unrecognized key: "${G}"`);if(!X[G])continue;Y[G]=z.shape[G]}return G1($,{...$._zod.def,shape:Y,checks:[]})}function Fj($,X){let Y={...$._zod.def.shape},z=$._zod.def;for(let G in X){if(!(G in z.shape))throw new Error(`Unrecognized key: "${G}"`);if(!X[G])continue;delete Y[G]}return G1($,{...$._zod.def,shape:Y,checks:[]})}function Mj($,X){if(!YY(X))throw new Error("Invalid input to extend: expected a plain object");let Y={...$._zod.def,get shape(){let z={...$._zod.def.shape,...X};return CW(this,"shape",z),z},checks:[]};return G1($,Y)}function Lj($,X){return G1($,{...$._zod.def,get shape(){let Y={...$._zod.def.shape,...X._zod.def.shape};return CW(this,"shape",Y),Y},catchall:X._zod.def.catchall,checks:[]})}function Jj($,X,Y){let z=X._zod.def.shape,G={...z};if(Y)for(let U in Y){if(!(U in z))throw new Error(`Unrecognized key: "${U}"`);if(!Y[U])continue;G[U]=$?new $({type:"optional",innerType:z[U]}):z[U]}else for(let U in z)G[U]=$?new $({type:"optional",innerType:z[U]}):z[U];return G1(X,{...X._zod.def,shape:G,checks:[]})}function Aj($,X,Y){let z=X._zod.def.shape,G={...z};if(Y)for(let U in Y){if(!(U in G))throw new Error(`Unrecognized key: "${U}"`);if(!Y[U])continue;G[U]=new $({type:"nonoptional",innerType:z[U]})}else for(let U in z)G[U]=new $({type:"nonoptional",innerType:z[U]});return G1(X,{...X._zod.def,shape:G,checks:[]})}function a8($,X=0){for(let Y=X;Y<$.issues.length;Y++)if($.issues[Y]?.continue!==!0)return!0;return!1}function m4($,X){return X.map((Y)=>{var z;return(z=Y).path??(z.path=[]),Y.path.unshift($),Y})}function l2($){return typeof $==="string"?$:$?.message}function z1($,X,Y){let z={...$,path:$.path??[]};if(!$.message){let G=l2($.inst?._zod.def?.error?.($))??l2(X?.error?.($))??l2(Y.customError?.($))??l2(Y.localeError?.($))??"Invalid input";z.message=G}if(delete z.inst,delete z.continue,!X?.reportInput)delete z.input;return z}function t2($){if($ instanceof Set)return"set";if($ instanceof Map)return"map";if($ instanceof File)return"file";return"unknown"}function a2($){if(Array.isArray($))return"array";if(typeof $==="string")return"string";return"unknown"}function kW(...$){let[X,Y,z]=$;if(typeof X==="string")return{message:X,code:"custom",input:Y,inst:z};return{...X}}function Kj($){return Object.entries($).filter(([X,Y])=>{return Number.isNaN(Number.parseInt(X,10))}).map((X)=>X[1])}class vE{constructor(...$){}}var CE=($,X)=>{$.name="$ZodError",Object.defineProperty($,"_zod",{value:$._zod,enumerable:!1}),Object.defineProperty($,"issues",{value:X,enumerable:!1}),Object.defineProperty($,"message",{get(){return JSON.stringify(X,PW,2)},enumerable:!0}),Object.defineProperty($,"toString",{value:()=>$.message,enumerable:!1})},s2=P("$ZodError",CE),GY=P("$ZodError",CE,{Parent:Error});function e2($,X=(Y)=>Y.message){let Y={},z=[];for(let G of $.issues)if(G.path.length>0)Y[G.path[0]]=Y[G.path[0]]||[],Y[G.path[0]].push(X(G));else z.push(X(G));return{formErrors:z,fieldErrors:Y}}function $G($,X){let Y=X||function(U){return U.message},z={_errors:[]},G=(U)=>{for(let W of U.issues)if(W.code==="invalid_union"&&W.errors.length)W.errors.map((Q)=>G({issues:Q}));else if(W.code==="invalid_key")G({issues:W.issues});else if(W.code==="invalid_element")G({issues:W.issues});else if(W.path.length===0)z._errors.push(Y(W));else{let Q=z,Z=0;while(Z<W.path.length){let H=W.path[Z];if(Z!==W.path.length-1)Q[H]=Q[H]||{_errors:[]};else Q[H]=Q[H]||{_errors:[]},Q[H]._errors.push(Y(W));Q=Q[H],Z++}}};return G($),z}function bW($,X){let Y=X||function(U){return U.message},z={errors:[]},G=(U,W=[])=>{var Q,Z;for(let H of U.issues)if(H.code==="invalid_union"&&H.errors.length)H.errors.map((O)=>G({issues:O},H.path));else if(H.code==="invalid_key")G({issues:H.issues},H.path);else if(H.code==="invalid_element")G({issues:H.issues},H.path);else{let O=[...W,...H.path];if(O.length===0){z.errors.push(Y(H));continue}let w=z,V=0;while(V<O.length){let D=O[V],N=V===O.length-1;if(typeof D==="string")w.properties??(w.properties={}),(Q=w.properties)[D]??(Q[D]={errors:[]}),w=w.properties[D];else w.items??(w.items=[]),(Z=w.items)[D]??(Z[D]={errors:[]}),w=w.items[D];if(N)w.errors.push(Y(H));V++}}};return G($),z}function jE($){let X=[];for(let Y of $)if(typeof Y==="number")X.push(`[${Y}]`);else if(typeof Y==="symbol")X.push(`[${JSON.stringify(String(Y))}]`);else if(/[^\w$]/.test(Y))X.push(`[${JSON.stringify(Y)}]`);else{if(X.length)X.push(".");X.push(Y)}return X.join("")}function fW($){let X=[],Y=[...$.issues].sort((z,G)=>z.path.length-G.path.length);for(let z of Y)if(X.push(`\u2716 ${z.message}`),z.path?.length)X.push(` \u2192 at ${jE(z.path)}`);return X.join(`
17
17
  `)}var L7=($)=>(X,Y,z,G)=>{let U=z?Object.assign(z,{async:!1}):{async:!1},W=X._zod.run({value:Y,issues:[]},U);if(W instanceof Promise)throw new J0;if(W.issues.length){let Q=new(G?.Err??$)(W.issues.map((Z)=>z1(Z,U,P6())));throw M7(Q,G?.callee),Q}return W.value},J7=L7(GY),A7=($)=>async(X,Y,z,G)=>{let U=z?Object.assign(z,{async:!0}):{async:!0},W=X._zod.run({value:Y,issues:[]},U);if(W instanceof Promise)W=await W;if(W.issues.length){let Q=new(G?.Err??$)(W.issues.map((Z)=>z1(Z,U,P6())));throw M7(Q,G?.callee),Q}return W.value},K7=A7(GY),_7=($)=>(X,Y,z)=>{let G=z?{...z,async:!1}:{async:!1},U=X._zod.run({value:Y,issues:[]},G);if(U instanceof Promise)throw new J0;return U.issues.length?{success:!1,error:new($??s2)(U.issues.map((W)=>z1(W,G,P6())))}:{success:!0,data:U.value}},hW=_7(GY),q7=($)=>async(X,Y,z)=>{let G=z?Object.assign(z,{async:!0}):{async:!0},U=X._zod.run({value:Y,issues:[]},G);if(U instanceof Promise)U=await U;return U.issues.length?{success:!1,error:new $(U.issues.map((W)=>z1(W,G,P6())))}:{success:!0,data:U.value}},gW=q7(GY);var e8={};Z8(e8,{xid:()=>cW,uuid7:()=>Pj,uuid6:()=>Rj,uuid4:()=>Tj,uuid:()=>s8,uppercase:()=>DQ,unicodeEmail:()=>jj,undefined:()=>wQ,ulid:()=>uW,time:()=>GQ,string:()=>UQ,rfc5322Email:()=>Cj,number:()=>ZQ,null:()=>OQ,nanoid:()=>dW,lowercase:()=>VQ,ksuid:()=>pW,ipv6:()=>tW,ipv4:()=>oW,integer:()=>QQ,html5Email:()=>vj,hostname:()=>$Q,guid:()=>iW,extendedDuration:()=>qj,emoji:()=>nW,email:()=>rW,e164:()=>XQ,duration:()=>lW,domain:()=>xj,datetime:()=>zQ,date:()=>YQ,cuid2:()=>mW,cuid:()=>yW,cidrv6:()=>sW,cidrv4:()=>aW,browserEmail:()=>Bj,boolean:()=>HQ,bigint:()=>WQ,base64url:()=>T7,base64:()=>eW,_emoji:()=>Ij});var yW=/^[cC][^\s-]{8,}$/,mW=/^[0-9a-z]+$/,uW=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,cW=/^[0-9a-vA-V]{20}$/,pW=/^[A-Za-z0-9]{27}$/,dW=/^[a-zA-Z0-9_-]{21}$/,lW=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,qj=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,iW=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,s8=($)=>{if(!$)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${$}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)},Tj=s8(4),Rj=s8(6),Pj=s8(7),rW=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,vj=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Cj=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,jj=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,Bj=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Ij="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function nW(){return new RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")}var oW=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,tW=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,aW=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,sW=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,eW=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,T7=/^[A-Za-z0-9_-]*$/,$Q=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/,xj=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,XQ=/^\+(?:[0-9]){6,14}[0-9]$/,BE="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",YQ=new RegExp(`^${BE}$`);function IE($){return typeof $.precision==="number"?$.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":$.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${$.precision}}`:"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function GQ($){return new RegExp(`^${IE($)}$`)}function zQ($){let X=IE({precision:$.precision}),Y=["Z"];if($.local)Y.push("");if($.offset)Y.push("([+-]\\d{2}:\\d{2})");let z=`${X}(?:${Y.join("|")})`;return new RegExp(`^${BE}T(?:${z})$`)}var UQ=($)=>{let X=$?`[\\s\\S]{${$?.minimum??0},${$?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${X}$`)},WQ=/^\d+n?$/,QQ=/^\d+$/,ZQ=/^-?\d+(?:\.\d+)?/i,HQ=/true|false/i,OQ=/null/i;var wQ=/undefined/i;var VQ=/^[^A-Z]*$/,DQ=/^[^a-z]*$/;var w6=P("$ZodCheck",($,X)=>{var Y;$._zod??($._zod={}),$._zod.def=X,(Y=$._zod).onattach??(Y.onattach=[])}),SE={number:"number",bigint:"bigint",object:"date"},R7=P("$ZodCheckLessThan",($,X)=>{w6.init($,X);let Y=SE[typeof X.value];$._zod.onattach.push((z)=>{let G=z._zod.bag,U=(X.inclusive?G.maximum:G.exclusiveMaximum)??Number.POSITIVE_INFINITY;if(X.value<U)if(X.inclusive)G.maximum=X.value;else G.exclusiveMaximum=X.value}),$._zod.check=(z)=>{if(X.inclusive?z.value<=X.value:z.value<X.value)return;z.issues.push({origin:Y,code:"too_big",maximum:X.value,input:z.value,inclusive:X.inclusive,inst:$,continue:!X.abort})}}),P7=P("$ZodCheckGreaterThan",($,X)=>{w6.init($,X);let Y=SE[typeof X.value];$._zod.onattach.push((z)=>{let G=z._zod.bag,U=(X.inclusive?G.minimum:G.exclusiveMinimum)??Number.NEGATIVE_INFINITY;if(X.value>U)if(X.inclusive)G.minimum=X.value;else G.exclusiveMinimum=X.value}),$._zod.check=(z)=>{if(X.inclusive?z.value>=X.value:z.value>X.value)return;z.issues.push({origin:Y,code:"too_small",minimum:X.value,input:z.value,inclusive:X.inclusive,inst:$,continue:!X.abort})}}),NQ=P("$ZodCheckMultipleOf",($,X)=>{w6.init($,X),$._zod.onattach.push((Y)=>{var z;(z=Y._zod.bag).multipleOf??(z.multipleOf=X.value)}),$._zod.check=(Y)=>{if(typeof Y.value!==typeof X.value)throw new Error("Cannot mix number and bigint in multiple_of check.");if(typeof Y.value==="bigint"?Y.value%X.value===BigInt(0):vW(Y.value,X.value)===0)return;Y.issues.push({origin:typeof Y.value,code:"not_multiple_of",divisor:X.value,input:Y.value,inst:$,continue:!X.abort})}}),EQ=P("$ZodCheckNumberFormat",($,X)=>{w6.init($,X),X.format=X.format||"float64";let Y=X.format?.includes("int"),z=Y?"int":"number",[G,U]=xW[X.format];$._zod.onattach.push((W)=>{let Q=W._zod.bag;if(Q.format=X.format,Q.minimum=G,Q.maximum=U,Y)Q.pattern=QQ}),$._zod.check=(W)=>{let Q=W.value;if(Y){if(!Number.isInteger(Q)){W.issues.push({expected:z,format:X.format,code:"invalid_type",input:Q,inst:$});return}if(!Number.isSafeInteger(Q)){if(Q>0)W.issues.push({input:Q,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:$,origin:z,continue:!X.abort});else W.issues.push({input:Q,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:$,origin:z,continue:!X.abort});return}}if(Q<G)W.issues.push({origin:"number",input:Q,code:"too_small",minimum:G,inclusive:!0,inst:$,continue:!X.abort});if(Q>U)W.issues.push({origin:"number",input:Q,code:"too_big",maximum:U,inst:$})}}),FQ=P("$ZodCheckBigIntFormat",($,X)=>{w6.init($,X);let[Y,z]=SW[X.format];$._zod.onattach.push((G)=>{let U=G._zod.bag;U.format=X.format,U.minimum=Y,U.maximum=z}),$._zod.check=(G)=>{let U=G.value;if(U<Y)G.issues.push({origin:"bigint",input:U,code:"too_small",minimum:Y,inclusive:!0,inst:$,continue:!X.abort});if(U>z)G.issues.push({origin:"bigint",input:U,code:"too_big",maximum:z,inst:$})}}),MQ=P("$ZodCheckMaxSize",($,X)=>{var Y;w6.init($,X),(Y=$._zod.def).when??(Y.when=(z)=>{let G=z.value;return!O8(G)&&G.size!==void 0}),$._zod.onattach.push((z)=>{let G=z._zod.bag.maximum??Number.POSITIVE_INFINITY;if(X.maximum<G)z._zod.bag.maximum=X.maximum}),$._zod.check=(z)=>{let G=z.value;if(G.size<=X.maximum)return;z.issues.push({origin:t2(G),code:"too_big",maximum:X.maximum,input:G,inst:$,continue:!X.abort})}}),LQ=P("$ZodCheckMinSize",($,X)=>{var Y;w6.init($,X),(Y=$._zod.def).when??(Y.when=(z)=>{let G=z.value;return!O8(G)&&G.size!==void 0}),$._zod.onattach.push((z)=>{let G=z._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(X.minimum>G)z._zod.bag.minimum=X.minimum}),$._zod.check=(z)=>{let G=z.value;if(G.size>=X.minimum)return;z.issues.push({origin:t2(G),code:"too_small",minimum:X.minimum,input:G,inst:$,continue:!X.abort})}}),JQ=P("$ZodCheckSizeEquals",($,X)=>{var Y;w6.init($,X),(Y=$._zod.def).when??(Y.when=(z)=>{let G=z.value;return!O8(G)&&G.size!==void 0}),$._zod.onattach.push((z)=>{let G=z._zod.bag;G.minimum=X.size,G.maximum=X.size,G.size=X.size}),$._zod.check=(z)=>{let G=z.value,U=G.size;if(U===X.size)return;let W=U>X.size;z.issues.push({origin:t2(G),...W?{code:"too_big",maximum:X.size}:{code:"too_small",minimum:X.size},inclusive:!0,exact:!0,input:z.value,inst:$,continue:!X.abort})}}),AQ=P("$ZodCheckMaxLength",($,X)=>{var Y;w6.init($,X),(Y=$._zod.def).when??(Y.when=(z)=>{let G=z.value;return!O8(G)&&G.length!==void 0}),$._zod.onattach.push((z)=>{let G=z._zod.bag.maximum??Number.POSITIVE_INFINITY;if(X.maximum<G)z._zod.bag.maximum=X.maximum}),$._zod.check=(z)=>{let G=z.value;if(G.length<=X.maximum)return;let W=a2(G);z.issues.push({origin:W,code:"too_big",maximum:X.maximum,inclusive:!0,input:G,inst:$,continue:!X.abort})}}),KQ=P("$ZodCheckMinLength",($,X)=>{var Y;w6.init($,X),(Y=$._zod.def).when??(Y.when=(z)=>{let G=z.value;return!O8(G)&&G.length!==void 0}),$._zod.onattach.push((z)=>{let G=z._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(X.minimum>G)z._zod.bag.minimum=X.minimum}),$._zod.check=(z)=>{let G=z.value;if(G.length>=X.minimum)return;let W=a2(G);z.issues.push({origin:W,code:"too_small",minimum:X.minimum,inclusive:!0,input:G,inst:$,continue:!X.abort})}}),_Q=P("$ZodCheckLengthEquals",($,X)=>{var Y;w6.init($,X),(Y=$._zod.def).when??(Y.when=(z)=>{let G=z.value;return!O8(G)&&G.length!==void 0}),$._zod.onattach.push((z)=>{let G=z._zod.bag;G.minimum=X.length,G.maximum=X.length,G.length=X.length}),$._zod.check=(z)=>{let G=z.value,U=G.length;if(U===X.length)return;let W=a2(G),Q=U>X.length;z.issues.push({origin:W,...Q?{code:"too_big",maximum:X.length}:{code:"too_small",minimum:X.length},inclusive:!0,exact:!0,input:z.value,inst:$,continue:!X.abort})}}),zY=P("$ZodCheckStringFormat",($,X)=>{var Y,z;if(w6.init($,X),$._zod.onattach.push((G)=>{let U=G._zod.bag;if(U.format=X.format,X.pattern)U.patterns??(U.patterns=new Set),U.patterns.add(X.pattern)}),X.pattern)(Y=$._zod).check??(Y.check=(G)=>{if(X.pattern.lastIndex=0,X.pattern.test(G.value))return;G.issues.push({origin:"string",code:"invalid_format",format:X.format,input:G.value,...X.pattern?{pattern:X.pattern.toString()}:{},inst:$,continue:!X.abort})});else(z=$._zod).check??(z.check=()=>{})}),qQ=P("$ZodCheckRegex",($,X)=>{zY.init($,X),$._zod.check=(Y)=>{if(X.pattern.lastIndex=0,X.pattern.test(Y.value))return;Y.issues.push({origin:"string",code:"invalid_format",format:"regex",input:Y.value,pattern:X.pattern.toString(),inst:$,continue:!X.abort})}}),TQ=P("$ZodCheckLowerCase",($,X)=>{X.pattern??(X.pattern=VQ),zY.init($,X)}),RQ=P("$ZodCheckUpperCase",($,X)=>{X.pattern??(X.pattern=DQ),zY.init($,X)}),PQ=P("$ZodCheckIncludes",($,X)=>{w6.init($,X);let Y=A0(X.includes),z=new RegExp(typeof X.position==="number"?`^.{${X.position}}${Y}`:Y);X.pattern=z,$._zod.onattach.push((G)=>{let U=G._zod.bag;U.patterns??(U.patterns=new Set),U.patterns.add(z)}),$._zod.check=(G)=>{if(G.value.includes(X.includes,X.position))return;G.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:X.includes,input:G.value,inst:$,continue:!X.abort})}}),vQ=P("$ZodCheckStartsWith",($,X)=>{w6.init($,X);let Y=new RegExp(`^${A0(X.prefix)}.*`);X.pattern??(X.pattern=Y),$._zod.onattach.push((z)=>{let G=z._zod.bag;G.patterns??(G.patterns=new Set),G.patterns.add(Y)}),$._zod.check=(z)=>{if(z.value.startsWith(X.prefix))return;z.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:X.prefix,input:z.value,inst:$,continue:!X.abort})}}),CQ=P("$ZodCheckEndsWith",($,X)=>{w6.init($,X);let Y=new RegExp(`.*${A0(X.suffix)}$`);X.pattern??(X.pattern=Y),$._zod.onattach.push((z)=>{let G=z._zod.bag;G.patterns??(G.patterns=new Set),G.patterns.add(Y)}),$._zod.check=(z)=>{if(z.value.endsWith(X.suffix))return;z.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:X.suffix,input:z.value,inst:$,continue:!X.abort})}});function xE($,X,Y){if($.issues.length)X.issues.push(...m4(Y,$.issues))}var jQ=P("$ZodCheckProperty",($,X)=>{w6.init($,X),$._zod.check=(Y)=>{let z=X.schema._zod.run({value:Y.value[X.property],issues:[]},{});if(z instanceof Promise)return z.then((G)=>xE(G,Y,X.property));xE(z,Y,X.property);return}}),BQ=P("$ZodCheckMimeType",($,X)=>{w6.init($,X);let Y=new Set(X.mime);$._zod.onattach.push((z)=>{z._zod.bag.mime=X.mime}),$._zod.check=(z)=>{if(Y.has(z.value.type))return;z.issues.push({code:"invalid_value",values:X.mime,input:z.value.type,inst:$})}}),IQ=P("$ZodCheckOverwrite",($,X)=>{w6.init($,X),$._zod.check=(Y)=>{Y.value=X.tx(Y.value)}});class v7{constructor($=[]){if(this.content=[],this.indent=0,this)this.args=$}indented($){this.indent+=1,$(this),this.indent-=1}write($){if(typeof $==="function"){$(this,{execution:"sync"}),$(this,{execution:"async"});return}let Y=$.split(`
18
18
  `).filter((U)=>U),z=Math.min(...Y.map((U)=>U.length-U.trimStart().length)),G=Y.map((U)=>U.slice(z)).map((U)=>" ".repeat(this.indent*2)+U);for(let U of G)this.content.push(U)}compile(){let $=Function,X=this?.args,z=[...(this?.content??[""]).map((G)=>` ${G}`)];return new $(...X,z.join(`
19
19
  `))}}var xQ={major:4,minor:0,patch:0};var F$=P("$ZodType",($,X)=>{var Y;$??($={}),$._zod.def=X,$._zod.bag=$._zod.bag||{},$._zod.version=xQ;let z=[...$._zod.def.checks??[]];if($._zod.traits.has("$ZodCheck"))z.unshift($);for(let G of z)for(let U of G._zod.onattach)U($);if(z.length===0)(Y=$._zod).deferred??(Y.deferred=[]),$._zod.deferred?.push(()=>{$._zod.run=$._zod.parse});else{let G=(U,W,Q)=>{let Z=a8(U),H;for(let O of W){if(O._zod.def.when){if(!O._zod.def.when(U))continue}else if(Z)continue;let w=U.issues.length,V=O._zod.check(U);if(V instanceof Promise&&Q?.async===!1)throw new J0;if(H||V instanceof Promise)H=(H??Promise.resolve()).then(async()=>{if(await V,U.issues.length===w)return;if(!Z)Z=a8(U,w)});else{if(U.issues.length===w)continue;if(!Z)Z=a8(U,w)}}if(H)return H.then(()=>{return U});return U};$._zod.run=(U,W)=>{let Q=$._zod.parse(U,W);if(Q instanceof Promise){if(W.async===!1)throw new J0;return Q.then((Z)=>G(Z,z,W))}return G(Q,z,W)}}$["~standard"]={validate:(G)=>{try{let U=hW($,G);return U.success?{value:U.data}:{issues:U.error?.issues}}catch(U){return gW($,G).then((W)=>W.success?{value:W.data}:{issues:W.error?.issues})}},vendor:"zod",version:1}}),$X=P("$ZodString",($,X)=>{F$.init($,X),$._zod.pattern=[...$?._zod.bag?.patterns??[]].pop()??UQ($._zod.bag),$._zod.parse=(Y,z)=>{if(X.coerce)try{Y.value=String(Y.value)}catch(G){}if(typeof Y.value==="string")return Y;return Y.issues.push({expected:"string",code:"invalid_type",input:Y.value,inst:$}),Y}}),i$=P("$ZodStringFormat",($,X)=>{zY.init($,X),$X.init($,X)}),kQ=P("$ZodGUID",($,X)=>{X.pattern??(X.pattern=iW),i$.init($,X)}),bQ=P("$ZodUUID",($,X)=>{if(X.version){let z={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[X.version];if(z===void 0)throw new Error(`Invalid UUID version: "${X.version}"`);X.pattern??(X.pattern=s8(z))}else X.pattern??(X.pattern=s8());i$.init($,X)}),fQ=P("$ZodEmail",($,X)=>{X.pattern??(X.pattern=rW),i$.init($,X)}),hQ=P("$ZodURL",($,X)=>{i$.init($,X),$._zod.check=(Y)=>{try{let z=Y.value,G=new URL(z),U=G.href;if(X.hostname){if(X.hostname.lastIndex=0,!X.hostname.test(G.hostname))Y.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:$Q.source,input:Y.value,inst:$,continue:!X.abort})}if(X.protocol){if(X.protocol.lastIndex=0,!X.protocol.test(G.protocol.endsWith(":")?G.protocol.slice(0,-1):G.protocol))Y.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:X.protocol.source,input:Y.value,inst:$,continue:!X.abort})}if(!z.endsWith("/")&&U.endsWith("/"))Y.value=U.slice(0,-1);else Y.value=U;return}catch(z){Y.issues.push({code:"invalid_format",format:"url",input:Y.value,inst:$,continue:!X.abort})}}}),gQ=P("$ZodEmoji",($,X)=>{X.pattern??(X.pattern=nW()),i$.init($,X)}),yQ=P("$ZodNanoID",($,X)=>{X.pattern??(X.pattern=dW),i$.init($,X)}),mQ=P("$ZodCUID",($,X)=>{X.pattern??(X.pattern=yW),i$.init($,X)}),uQ=P("$ZodCUID2",($,X)=>{X.pattern??(X.pattern=mW),i$.init($,X)}),cQ=P("$ZodULID",($,X)=>{X.pattern??(X.pattern=uW),i$.init($,X)}),pQ=P("$ZodXID",($,X)=>{X.pattern??(X.pattern=cW),i$.init($,X)}),dQ=P("$ZodKSUID",($,X)=>{X.pattern??(X.pattern=pW),i$.init($,X)}),lQ=P("$ZodISODateTime",($,X)=>{X.pattern??(X.pattern=zQ(X)),i$.init($,X)}),iQ=P("$ZodISODate",($,X)=>{X.pattern??(X.pattern=YQ),i$.init($,X)}),rQ=P("$ZodISOTime",($,X)=>{X.pattern??(X.pattern=GQ(X)),i$.init($,X)}),nQ=P("$ZodISODuration",($,X)=>{X.pattern??(X.pattern=lW),i$.init($,X)}),oQ=P("$ZodIPv4",($,X)=>{X.pattern??(X.pattern=oW),i$.init($,X),$._zod.onattach.push((Y)=>{let z=Y._zod.bag;z.format="ipv4"})}),tQ=P("$ZodIPv6",($,X)=>{X.pattern??(X.pattern=tW),i$.init($,X),$._zod.onattach.push((Y)=>{let z=Y._zod.bag;z.format="ipv6"}),$._zod.check=(Y)=>{try{new URL(`http://[${Y.value}]`)}catch{Y.issues.push({code:"invalid_format",format:"ipv6",input:Y.value,inst:$,continue:!X.abort})}}}),aQ=P("$ZodCIDRv4",($,X)=>{X.pattern??(X.pattern=aW),i$.init($,X)}),sQ=P("$ZodCIDRv6",($,X)=>{X.pattern??(X.pattern=sW),i$.init($,X),$._zod.check=(Y)=>{let[z,G]=Y.value.split("/");try{if(!G)throw new Error;let U=Number(G);if(`${U}`!==G)throw new Error;if(U<0||U>128)throw new Error;new URL(`http://[${z}]`)}catch{Y.issues.push({code:"invalid_format",format:"cidrv6",input:Y.value,inst:$,continue:!X.abort})}}});function eQ($){if($==="")return!0;if($.length%4!==0)return!1;try{return atob($),!0}catch{return!1}}var $Z=P("$ZodBase64",($,X)=>{X.pattern??(X.pattern=eW),i$.init($,X),$._zod.onattach.push((Y)=>{Y._zod.bag.contentEncoding="base64"}),$._zod.check=(Y)=>{if(eQ(Y.value))return;Y.issues.push({code:"invalid_format",format:"base64",input:Y.value,inst:$,continue:!X.abort})}});function iE($){if(!T7.test($))return!1;let X=$.replace(/[-_]/g,(z)=>z==="-"?"+":"/"),Y=X.padEnd(Math.ceil(X.length/4)*4,"=");return eQ(Y)}var XZ=P("$ZodBase64URL",($,X)=>{X.pattern??(X.pattern=T7),i$.init($,X),$._zod.onattach.push((Y)=>{Y._zod.bag.contentEncoding="base64url"}),$._zod.check=(Y)=>{if(iE(Y.value))return;Y.issues.push({code:"invalid_format",format:"base64url",input:Y.value,inst:$,continue:!X.abort})}}),YZ=P("$ZodE164",($,X)=>{X.pattern??(X.pattern=XQ),i$.init($,X)});function rE($,X=null){try{let Y=$.split(".");if(Y.length!==3)return!1;let[z]=Y;if(!z)return!1;let G=JSON.parse(atob(z));if("typ"in G&&G?.typ!=="JWT")return!1;if(!G.alg)return!1;if(X&&(!("alg"in G)||G.alg!==X))return!1;return!0}catch{return!1}}var GZ=P("$ZodJWT",($,X)=>{i$.init($,X),$._zod.check=(Y)=>{if(rE(Y.value,X.alg))return;Y.issues.push({code:"invalid_format",format:"jwt",input:Y.value,inst:$,continue:!X.abort})}}),zZ=P("$ZodCustomStringFormat",($,X)=>{i$.init($,X),$._zod.check=(Y)=>{if(X.fn(Y.value))return;Y.issues.push({code:"invalid_format",format:X.format,input:Y.value,inst:$,continue:!X.abort})}}),B7=P("$ZodNumber",($,X)=>{F$.init($,X),$._zod.pattern=$._zod.bag.pattern??ZQ,$._zod.parse=(Y,z)=>{if(X.coerce)try{Y.value=Number(Y.value)}catch(W){}let G=Y.value;if(typeof G==="number"&&!Number.isNaN(G)&&Number.isFinite(G))return Y;let U=typeof G==="number"?Number.isNaN(G)?"NaN":!Number.isFinite(G)?"Infinity":void 0:void 0;return Y.issues.push({expected:"number",code:"invalid_type",input:G,inst:$,...U?{received:U}:{}}),Y}}),UZ=P("$ZodNumber",($,X)=>{EQ.init($,X),B7.init($,X)}),XG=P("$ZodBoolean",($,X)=>{F$.init($,X),$._zod.pattern=HQ,$._zod.parse=(Y,z)=>{if(X.coerce)try{Y.value=Boolean(Y.value)}catch(U){}let G=Y.value;if(typeof G==="boolean")return Y;return Y.issues.push({expected:"boolean",code:"invalid_type",input:G,inst:$}),Y}}),I7=P("$ZodBigInt",($,X)=>{F$.init($,X),$._zod.pattern=WQ,$._zod.parse=(Y,z)=>{if(X.coerce)try{Y.value=BigInt(Y.value)}catch(G){}if(typeof Y.value==="bigint")return Y;return Y.issues.push({expected:"bigint",code:"invalid_type",input:Y.value,inst:$}),Y}}),WZ=P("$ZodBigInt",($,X)=>{FQ.init($,X),I7.init($,X)}),QZ=P("$ZodSymbol",($,X)=>{F$.init($,X),$._zod.parse=(Y,z)=>{let G=Y.value;if(typeof G==="symbol")return Y;return Y.issues.push({expected:"symbol",code:"invalid_type",input:G,inst:$}),Y}}),ZZ=P("$ZodUndefined",($,X)=>{F$.init($,X),$._zod.pattern=wQ,$._zod.values=new Set([void 0]),$._zod.optin="optional",$._zod.optout="optional",$._zod.parse=(Y,z)=>{let G=Y.value;if(typeof G==="undefined")return Y;return Y.issues.push({expected:"undefined",code:"invalid_type",input:G,inst:$}),Y}}),HZ=P("$ZodNull",($,X)=>{F$.init($,X),$._zod.pattern=OQ,$._zod.values=new Set([null]),$._zod.parse=(Y,z)=>{let G=Y.value;if(G===null)return Y;return Y.issues.push({expected:"null",code:"invalid_type",input:G,inst:$}),Y}}),OZ=P("$ZodAny",($,X)=>{F$.init($,X),$._zod.parse=(Y)=>Y}),UY=P("$ZodUnknown",($,X)=>{F$.init($,X),$._zod.parse=(Y)=>Y}),wZ=P("$ZodNever",($,X)=>{F$.init($,X),$._zod.parse=(Y,z)=>{return Y.issues.push({expected:"never",code:"invalid_type",input:Y.value,inst:$}),Y}}),VZ=P("$ZodVoid",($,X)=>{F$.init($,X),$._zod.parse=(Y,z)=>{let G=Y.value;if(typeof G==="undefined")return Y;return Y.issues.push({expected:"void",code:"invalid_type",input:G,inst:$}),Y}}),DZ=P("$ZodDate",($,X)=>{F$.init($,X),$._zod.parse=(Y,z)=>{if(X.coerce)try{Y.value=new Date(Y.value)}catch(Q){}let G=Y.value,U=G instanceof Date;if(U&&!Number.isNaN(G.getTime()))return Y;return Y.issues.push({expected:"date",code:"invalid_type",input:G,...U?{received:"Invalid Date"}:{},inst:$}),Y}});function bE($,X,Y){if($.issues.length)X.issues.push(...m4(Y,$.issues));X.value[Y]=$.value}var YG=P("$ZodArray",($,X)=>{F$.init($,X),$._zod.parse=(Y,z)=>{let G=Y.value;if(!Array.isArray(G))return Y.issues.push({expected:"array",code:"invalid_type",input:G,inst:$}),Y;Y.value=Array(G.length);let U=[];for(let W=0;W<G.length;W++){let Q=G[W],Z=X.element._zod.run({value:Q,issues:[]},z);if(Z instanceof Promise)U.push(Z.then((H)=>bE(H,Y,W)));else bE(Z,Y,W)}if(U.length)return Promise.all(U).then(()=>Y);return Y}});function C7($,X,Y){if($.issues.length)X.issues.push(...m4(Y,$.issues));X.value[Y]=$.value}function fE($,X,Y,z){if($.issues.length)if(z[Y]===void 0)if(Y in z)X.value[Y]=void 0;else X.value[Y]=$.value;else X.issues.push(...m4(Y,$.issues));else if($.value===void 0){if(Y in z)X.value[Y]=void 0}else X.value[Y]=$.value}var NZ=P("$ZodObject",($,X)=>{F$.init($,X);let Y=r2(()=>{let w=Object.keys(X.shape);for(let D of w)if(!(X.shape[D]instanceof F$))throw new Error(`Invalid element at key "${D}": expected a Zod schema`);let V=IW(X.shape);return{shape:X.shape,keys:w,keySet:new Set(w),numKeys:w.length,optionalKeys:new Set(V)}});y$($._zod,"propValues",()=>{let w=X.shape,V={};for(let D in w){let N=w[D]._zod;if(N.values){V[D]??(V[D]=new Set);for(let F of N.values)V[D].add(F)}}return V});let z=(w)=>{let V=new v7(["shape","payload","ctx"]),D=Y.value,N=(q)=>{let R=t8(q);return`shape[${R}]._zod.run({ value: input[${R}], issues: [] }, ctx)`};V.write("const input = payload.value;");let F=Object.create(null),L=0;for(let q of D.keys)F[q]=`key_${L++}`;V.write("const newResult = {}");for(let q of D.keys)if(D.optionalKeys.has(q)){let R=F[q];V.write(`const ${R} = ${N(q)};`);let _=t8(q);V.write(`
@@ -116,7 +116,7 @@ new OpenAI({ apiKey, dangerouslyAllowBrowser: true });
116
116
 
117
117
  https://help.openai.com/en/articles/5112595-best-practices-for-api-key-safety
118
118
  `);this.baseURL=W.baseURL,this.timeout=W.timeout??xw.DEFAULT_TIMEOUT,this.logger=W.logger??console;let Q="warn";this.logLevel=Q,this.logLevel=Hw(W.logLevel,"ClientOptions.logLevel",this)??Hw(F8("OPENAI_LOG"),"process.env['OPENAI_LOG']",this)??Q,this.fetchOptions=W.fetchOptions,this.maxRetries=W.maxRetries??2,this.fetch=W.fetch??JM(),Z$(this,nz,KM,"f"),this._options=W,this.apiKey=X,this.organization=Y,this.project=z,this.webhookSecret=G}withOptions($){return new this.constructor({...this._options,baseURL:this.baseURL,maxRetries:this.maxRetries,timeout:this.timeout,logger:this.logger,logLevel:this.logLevel,fetch:this.fetch,fetchOptions:this.fetchOptions,apiKey:this.apiKey,organization:this.organization,project:this.project,webhookSecret:this.webhookSecret,...$})}defaultQuery(){return this._options.defaultQuery}validateHeaders({values:$,nulls:X}){return}async authHeaders($){return s([{Authorization:`Bearer ${this.apiKey}`}])}stringifyQuery($){return Qw($,{arrayFormat:"brackets"})}getUserAgent(){return`${this.constructor.name}/JS ${V8}`}defaultIdempotencyKey(){return`stainless-node-retry-${sO()}`}makeStatusError($,X,Y,z){return v6.generate($,X,Y,z)}buildURL($,X,Y){let z=!C(this,Iw,"m",VL).call(this)&&Y||this.baseURL,G=ZM($)?new URL($):new URL(z+(z.endsWith("/")&&$.startsWith("/")?$.slice(1):$)),U=this.defaultQuery();if(!OM(U))X={...U,...X};if(typeof X==="object"&&X&&!Array.isArray(X))G.search=this.stringifyQuery(X);return G.toString()}async prepareOptions($){}async prepareRequest($,{url:X,options:Y}){}get($,X){return this.methodRequest("get",$,X)}post($,X){return this.methodRequest("post",$,X)}patch($,X){return this.methodRequest("patch",$,X)}put($,X){return this.methodRequest("put",$,X)}delete($,X){return this.methodRequest("delete",$,X)}methodRequest($,X,Y){return this.request(Promise.resolve(Y).then((z)=>{return{method:$,path:X,...z}}))}request($,X=null){return new WX(this,this.makeRequest($,X,void 0))}async makeRequest($,X,Y){let z=await $,G=z.maxRetries??this.maxRetries;if(X==null)X=G;await this.prepareOptions(z);let{req:U,url:W,timeout:Q}=await this.buildRequest(z,{retryCount:G-X});await this.prepareRequest(U,{url:W,options:z});let Z="log_"+(Math.random()*16777216|0).toString(16).padStart(6,"0"),H=Y===void 0?"":`, retryOf: ${Y}`,O=Date.now();if(_6(this).debug(`[${Z}] sending request`,v0({retryOfRequestLogID:Y,method:z.method,url:W,options:z,headers:U.headers})),z.signal?.aborted)throw new b6;let w=new AbortController,V=await this.fetchWithTimeout(W,U,Q,w).catch(xG),D=Date.now();if(V instanceof Error){let L=`retrying, ${X} attempts remaining`;if(z.signal?.aborted)throw new b6;let K=IG(V)||/timed? ?out/i.test(String(V)+("cause"in V?String(V.cause):""));if(X)return _6(this).info(`[${Z}] connection ${K?"timed out":"failed"} - ${L}`),_6(this).debug(`[${Z}] connection ${K?"timed out":"failed"} (${L})`,v0({retryOfRequestLogID:Y,url:W,durationMs:D-O,message:V.message})),this.retryRequest(z,X,Y??Z);if(_6(this).info(`[${Z}] connection ${K?"timed out":"failed"} - error; no more retries left`),_6(this).debug(`[${Z}] connection ${K?"timed out":"failed"} (error; no more retries left)`,v0({retryOfRequestLogID:Y,url:W,durationMs:D-O,message:V.message})),K)throw new UX;throw new zX({cause:V})}let N=[...V.headers.entries()].filter(([L])=>L==="x-request-id").map(([L,K])=>", "+L+": "+JSON.stringify(K)).join(""),F=`[${Z}${H}${N}] ${U.method} ${W} ${V.ok?"succeeded":"failed"} with status ${V.status} in ${D-O}ms`;if(!V.ok){let L=await this.shouldRetry(V);if(X&&L){let x=`retrying, ${X} attempts remaining`;return await AM(V.body),_6(this).info(`${F} - ${x}`),_6(this).debug(`[${Z}] response error (${x})`,v0({retryOfRequestLogID:Y,url:V.url,status:V.status,headers:V.headers,durationMs:D-O})),this.retryRequest(z,X,Y??Z,V.headers)}let K=L?"error; no more retries left":"error; not retryable";_6(this).info(`${F} - ${K}`);let q=await V.text().catch((x)=>xG(x).message),R=DM(q),_=R?void 0:q;throw _6(this).debug(`[${Z}] response error (${K})`,v0({retryOfRequestLogID:Y,url:V.url,status:V.status,headers:V.headers,message:_,durationMs:Date.now()-O})),this.makeStatusError(V.status,R,_,V.headers)}return _6(this).info(F),_6(this).debug(`[${Z}] response start`,v0({retryOfRequestLogID:Y,url:V.url,status:V.status,headers:V.headers,durationMs:D-O})),{response:V,options:z,controller:w,requestLogID:Z,retryOfRequestLogID:Y,startTime:O}}getAPIList($,X,Y){return this.requestAPIList(X,{method:"get",path:$,...Y})}requestAPIList($,X){let Y=this.makeRequest(X,null,void 0);return new Cz(this,Y,$)}async fetchWithTimeout($,X,Y,z){let{signal:G,method:U,...W}=X||{};if(G)G.addEventListener("abort",()=>z.abort());let Q=setTimeout(()=>z.abort(),Y),Z=globalThis.ReadableStream&&W.body instanceof globalThis.ReadableStream||typeof W.body==="object"&&W.body!==null&&Symbol.asyncIterator in W.body,H={signal:z.signal,...Z?{duplex:"half"}:{},method:"GET",...W};if(U)H.method=U.toUpperCase();try{return await this.fetch.call(void 0,$,H)}finally{clearTimeout(Q)}}async shouldRetry($){let X=$.headers.get("x-should-retry");if(X==="true")return!0;if(X==="false")return!1;if($.status===408)return!0;if($.status===409)return!0;if($.status===429)return!0;if($.status>=500)return!0;return!1}async retryRequest($,X,Y,z){let G,U=z?.get("retry-after-ms");if(U){let Q=parseFloat(U);if(!Number.isNaN(Q))G=Q}let W=z?.get("retry-after");if(W&&!G){let Q=parseFloat(W);if(!Number.isNaN(Q))G=Q*1000;else G=Date.parse(W)-Date.now()}if(!(G&&0<=G&&G<60000)){let Q=$.maxRetries??this.maxRetries;G=this.calculateDefaultRetryTimeoutMillis(X,Q)}return await $0(G),this.makeRequest($,X-1,Y)}calculateDefaultRetryTimeoutMillis($,X){let G=X-$,U=Math.min(0.5*Math.pow(2,G),8),W=1-Math.random()*0.25;return U*W*1000}async buildRequest($,{retryCount:X=0}={}){let Y={...$},{method:z,path:G,query:U,defaultBaseURL:W}=Y,Q=this.buildURL(G,U,W);if("timeout"in Y)VM("timeout",Y.timeout);Y.timeout=Y.timeout??this.timeout;let{bodyHeaders:Z,body:H}=this.buildBody({options:Y}),O=await this.buildHeaders({options:$,method:z,bodyHeaders:Z,retryCount:X});return{req:{method:z,headers:O,...Y.signal&&{signal:Y.signal},...globalThis.ReadableStream&&H instanceof globalThis.ReadableStream&&{duplex:"half"},...H&&{body:H},...this.fetchOptions??{},...Y.fetchOptions??{}},url:Q,timeout:Y.timeout}}async buildHeaders({options:$,method:X,bodyHeaders:Y,retryCount:z}){let G={};if(this.idempotencyHeader&&X!=="get"){if(!$.idempotencyKey)$.idempotencyKey=this.defaultIdempotencyKey();G[this.idempotencyHeader]=$.idempotencyKey}let U=s([G,{Accept:"application/json","User-Agent":this.getUserAgent(),"X-Stainless-Retry-Count":String(z),...$.timeout?{"X-Stainless-Timeout":String(Math.trunc($.timeout/1000))}:{},...LM(),"OpenAI-Organization":this.organization,"OpenAI-Project":this.project},await this.authHeaders($),this._options.defaultHeaders,Y,$.headers]);return this.validateHeaders(U),U.values}buildBody({options:{body:$,headers:X}}){if(!$)return{bodyHeaders:void 0,body:void 0};let Y=s([X]);if(ArrayBuffer.isView($)||$ instanceof ArrayBuffer||$ instanceof DataView||typeof $==="string"&&Y.values.has("content-type")||$ instanceof Blob||$ instanceof FormData||$ instanceof URLSearchParams||globalThis.ReadableStream&&$ instanceof globalThis.ReadableStream)return{bodyHeaders:void 0,body:$};else if(typeof $==="object"&&((Symbol.asyncIterator in $)||(Symbol.iterator in $)&&("next"in $)&&typeof $.next==="function"))return{bodyHeaders:void 0,body:Az($)};else return C(this,nz,"f").call(this,{body:$,headers:Y})}}xw=_$,nz=new WeakMap,Iw=new WeakSet,VL=function $(){return this.baseURL!=="https://api.openai.com/v1"};_$.OpenAI=xw;_$.DEFAULT_TIMEOUT=600000;_$.OpenAIError=G$;_$.APIError=v6;_$.APIConnectionError=zX;_$.APIConnectionTimeoutError=UX;_$.APIUserAbortError=b6;_$.NotFoundError=fG;_$.ConflictError=hG;_$.RateLimitError=yG;_$.BadRequestError=SG;_$.AuthenticationError=kG;_$.InternalServerError=mG;_$.PermissionDeniedError=bG;_$.UnprocessableEntityError=gG;_$.InvalidWebhookSignatureError=P0;_$.toFile=jz;_$.Completions=TY;_$.Chat=HX;_$.Embeddings=PY;_$.Files=CY;_$.Images=xY;_$.Audio=I0;_$.Moderations=kY;_$.Models=SY;_$.FineTuning=G0;_$.Graders=MX;_$.VectorStores=J8;_$.Webhooks=hY;_$.Beta=x0;_$.Batches=KY;_$.Uploads=JX;_$.Responses=LX;_$.Evals=FX;_$.Containers=EX;function PS($,...X){let[Y,z,G,U]=X,W=[{role:"user",content:pF(z)},{role:"user",content:Y}],Q=U.at(-1);if(Q)W.push({role:"user",content:["Oops! That didn't work. Here's what was returned last time:",JSON.stringify(Q.response,null,2),"Here's the error message:",JSON.stringify(Q.error.issues,null,2)].join(`
119
- `)});return{model:$,messages:W}}var V$=1e6,DL={"gpt-4.1":{promptPricePerToken:2/V$,promptPricePerTokenCached:0.5/V$,completionPricePerToken:8/V$},"gpt-4.1-mini":{promptPricePerToken:0.4/V$,promptPricePerTokenCached:0.1/V$,completionPricePerToken:1.6/V$},"gpt-4.1-nano":{promptPricePerToken:0.1/V$,promptPricePerTokenCached:0.025/V$,completionPricePerToken:0.4/V$},"gpt-4o":{promptPricePerToken:2.5/V$,promptPricePerTokenCached:1.25/V$,completionPricePerToken:10/V$},"gpt-4o-mini":{promptPricePerToken:0.15/V$,promptPricePerTokenCached:0.075/V$,completionPricePerToken:0.6/V$},o1:{promptPricePerToken:15/V$,promptPricePerTokenCached:7.5/V$,completionPricePerToken:60/V$},"o1-mini":{promptPricePerToken:1.1/V$,promptPricePerTokenCached:0.55/V$,completionPricePerToken:4.4/V$},o3:{promptPricePerToken:10/V$,promptPricePerTokenCached:2.5/V$,completionPricePerToken:40/V$},"o3-mini":{promptPricePerToken:1.1/V$,promptPricePerTokenCached:0.55/V$,completionPricePerToken:4.4/V$},"o4-mini":{promptPricePerToken:1.1/V$,promptPricePerTokenCached:0.275/V$,completionPricePerToken:4.4/V$},"codex-mini-latest":{promptPricePerToken:1.5/V$,promptPricePerTokenCached:0.375/V$,completionPricePerToken:6/V$},"chatgpt-4o-latest":{promptPricePerToken:5/V$,promptPricePerTokenCached:5/V$,completionPricePerToken:15/V$},"gpt-4":{promptPricePerToken:30/V$,promptPricePerTokenCached:30/V$,completionPricePerToken:60/V$},"gpt-4-turbo":{promptPricePerToken:10/V$,promptPricePerTokenCached:10/V$,completionPricePerToken:30/V$},"gpt-3.5-turbo":{promptPricePerToken:0.5/V$,promptPricePerTokenCached:0.5/V$,completionPricePerToken:1.5/V$},"gpt-4-32k":{promptPricePerToken:60/V$,promptPricePerTokenCached:60/V$,completionPricePerToken:120/V$},"gpt-3.5-turbo-16k":{promptPricePerToken:3/V$,promptPricePerTokenCached:3/V$,completionPricePerToken:4/V$}};function vS($){let Y=Object.keys(DL).filter((z)=>$.startsWith(z)).sort((z,G)=>G.length-z.length)[0];if(!Y)return;return DL[Y]}function EL($,X){let Y=$.prompt_tokens,z=$.prompt_tokens_details?.cached_tokens??0,G=Y-z,U=$.completion_tokens,W=vS(X),Q=0;if(W)Q=Y*W.promptPricePerToken+G*(W.promptPricePerTokenCached??0)+U*W.completionPricePerToken;else console.warn(`No pricing facts found for model ${X}. Giving a price of 0.`);return Q}function CS($){return async function X(Y,z){let G=await $.chat.completions.create({...Y,stream:!1,response_format:{type:"json_object"}},z),U=G.choices[0].message?.content,{usage:W}=G;if(U&&W){let Q=EL(W,Y.model);return{data:JSON.parse(U),usage:W,usdPrice:Q}}if(!U&&!W)throw new Error("No content or usage found in completion");if(!U)throw new Error("No content found in completion");throw new Error("No usage found in completion")}}var NL=new Map,FL=class{usdBudget;usdMinimum;getCompletionSquirreled;getUnknownJsonFromOpenAi;getUnknownJsonFromOpenAiSquirreled;squirrel;model;client;lastUsage;logger;constructor({model:$,usdBudget:X,usdMinimum:Y,apiKey:z,cachingMode:G,cacheKey:U="openai-safegen",logger:W=console}){this.usdBudget=X,this.usdMinimum=Y,this.model=$,this.squirrel=new QM(G),this.logger=W;let Q=NL.get(z);if(!Q)Q=new _$({apiKey:z,dangerouslyAllowBrowser:!1}),NL.set(z,Q);this.client=Q,this.getCompletionSquirreled=this.squirrel.add("openai-safegen",this.client.completions.create.bind(this.client.completions)),this.getUnknownJsonFromOpenAi=CS(this.client),this.getUnknownJsonFromOpenAiSquirreled=this.squirrel.add(U,this.getUnknownJsonFromOpenAi),this.from=cF(async(...Z)=>{if(this.usdBudget<this.usdMinimum)return W?.warn("SafeGen budget exhausted"),Z[2];let H=PS($,...Z),O=Z[0],w=Z[3],{data:V,usage:D,usdPrice:N}=await this.getUnknownJsonFromOpenAiSquirreled.for(`${O.replace(/[^a-zA-Z0-9-_. ]/g,"_")}-${w.length}`).get(H);return this.lastUsage=D,this.usdBudget-=N,V},W),this.object=this.from}getCompletion=async($,X)=>{if(this.usdBudget<this.usdMinimum)return this.logger.warn("SafeGen budget exhausted"),"";let Y=await this.getCompletionSquirreled.for($).get(X),{usage:z}=Y;if(z){let G=EL(z,X.model);this.usdBudget-=G}return Y.choices[0].text.trim()};from;object;boolean($){return dF($,async(X,Y)=>{return(await this.getCompletion(Y,{model:this.model,prompt:X,max_tokens:1})).toLowerCase()})}number($,X,Y){return lF($,X,Y,async(z,G)=>this.getCompletion(G,{model:this.model,prompt:z,max_tokens:6}))}choose($,X,Y=1,z=Y){return iF($,X,Y,z,async(G,U,W)=>this.getCompletion(U,{model:this.model,prompt:G,max_tokens:W}),this.logger)}};import{exec as vy}from"child_process";class M extends Array{constructor($,X){if(super($),this.sign=X,Object.setPrototypeOf(this,M.prototype),$>M.__kMaxLength)throw new RangeError("Maximum BigInt size exceeded")}static BigInt($){var X=Math.floor,Y=Number.isFinite;if(typeof $=="number"){if($===0)return M.__zero();if(M.__isOneDigitInt($))return 0>$?M.__oneDigit(-$,!0):M.__oneDigit($,!1);if(!Y($)||X($)!==$)throw new RangeError("The number "+$+" cannot be converted to BigInt because it is not an integer");return M.__fromDouble($)}if(typeof $=="string"){let z=M.__fromString($);if(z===null)throw new SyntaxError("Cannot convert "+$+" to a BigInt");return z}if(typeof $=="boolean")return $===!0?M.__oneDigit(1,!1):M.__zero();if(typeof $=="object"){if($.constructor===M)return $;let z=M.__toPrimitive($);return M.BigInt(z)}throw new TypeError("Cannot convert "+$+" to a BigInt")}toDebugString(){let $=["BigInt["];for(let X of this)$.push((X?(X>>>0).toString(16):X)+", ");return $.push("]"),$.join("")}toString($=10){if(2>$||36<$)throw new RangeError("toString() radix argument must be between 2 and 36");return this.length===0?"0":($&$-1)==0?M.__toStringBasePowerOfTwo(this,$):M.__toStringGeneric(this,$,!1)}valueOf(){throw new Error("Convert JSBI instances to native numbers using `toNumber`.")}static toNumber($){let X=$.length;if(X===0)return 0;if(X===1){let F=$.__unsignedDigit(0);return $.sign?-F:F}let Y=$.__digit(X-1),z=M.__clz30(Y),G=30*X-z;if(1024<G)return $.sign?-1/0:1/0;let U=G-1,W=Y,Q=X-1,Z=z+3,H=Z===32?0:W<<Z;H>>>=12;let O=Z-12,w=12<=Z?0:W<<20+Z,V=20+Z;for(0<O&&0<Q&&(Q--,W=$.__digit(Q),H|=W>>>30-O,w=W<<O+2,V=O+2);0<V&&0<Q;)Q--,W=$.__digit(Q),w|=30<=V?W<<V-30:W>>>30-V,V-=30;let D=M.__decideRounding($,V,Q,W);if((D===1||D===0&&(1&w)==1)&&(w=w+1>>>0,w===0&&(H++,H>>>20!=0&&(H=0,U++,1023<U))))return $.sign?-1/0:1/0;let N=$.sign?-2147483648:0;return U=U+1023<<20,M.__kBitConversionInts[M.__kBitConversionIntHigh]=N|U|H,M.__kBitConversionInts[M.__kBitConversionIntLow]=w,M.__kBitConversionDouble[0]}static unaryMinus($){if($.length===0)return $;let X=$.__copy();return X.sign=!$.sign,X}static bitwiseNot($){return $.sign?M.__absoluteSubOne($).__trim():M.__absoluteAddOne($,!0)}static exponentiate($,X){if(X.sign)throw new RangeError("Exponent must be positive");if(X.length===0)return M.__oneDigit(1,!1);if($.length===0)return $;if($.length===1&&$.__digit(0)===1)return $.sign&&(1&X.__digit(0))==0?M.unaryMinus($):$;if(1<X.length)throw new RangeError("BigInt too big");let Y=X.__unsignedDigit(0);if(Y===1)return $;if(Y>=M.__kMaxLengthBits)throw new RangeError("BigInt too big");if($.length===1&&$.__digit(0)===2){let U=1+(0|Y/30),W=$.sign&&(1&Y)!=0,Q=new M(U,W);Q.__initializeDigits();let Z=1<<Y%30;return Q.__setDigit(U-1,Z),Q}let z=null,G=$;for((1&Y)!=0&&(z=$),Y>>=1;Y!==0;Y>>=1)G=M.multiply(G,G),(1&Y)!=0&&(z===null?z=G:z=M.multiply(z,G));return z}static multiply($,X){if($.length===0)return $;if(X.length===0)return X;let Y=$.length+X.length;30<=$.__clzmsd()+X.__clzmsd()&&Y--;let z=new M(Y,$.sign!==X.sign);z.__initializeDigits();for(let G=0;G<$.length;G++)M.__multiplyAccumulate(X,$.__digit(G),z,G);return z.__trim()}static divide($,X){if(X.length===0)throw new RangeError("Division by zero");if(0>M.__absoluteCompare($,X))return M.__zero();let Y=$.sign!==X.sign,z=X.__unsignedDigit(0),G;if(X.length===1&&32767>=z){if(z===1)return Y===$.sign?$:M.unaryMinus($);G=M.__absoluteDivSmall($,z,null)}else G=M.__absoluteDivLarge($,X,!0,!1);return G.sign=Y,G.__trim()}static remainder($,X){if(X.length===0)throw new RangeError("Division by zero");if(0>M.__absoluteCompare($,X))return $;let Y=X.__unsignedDigit(0);if(X.length===1&&32767>=Y){if(Y===1)return M.__zero();let G=M.__absoluteModSmall($,Y);return G===0?M.__zero():M.__oneDigit(G,$.sign)}let z=M.__absoluteDivLarge($,X,!1,!0);return z.sign=$.sign,z.__trim()}static add($,X){let Y=$.sign;return Y===X.sign?M.__absoluteAdd($,X,Y):0<=M.__absoluteCompare($,X)?M.__absoluteSub($,X,Y):M.__absoluteSub(X,$,!Y)}static subtract($,X){let Y=$.sign;return Y===X.sign?0<=M.__absoluteCompare($,X)?M.__absoluteSub($,X,Y):M.__absoluteSub(X,$,!Y):M.__absoluteAdd($,X,Y)}static leftShift($,X){return X.length===0||$.length===0?$:X.sign?M.__rightShiftByAbsolute($,X):M.__leftShiftByAbsolute($,X)}static signedRightShift($,X){return X.length===0||$.length===0?$:X.sign?M.__leftShiftByAbsolute($,X):M.__rightShiftByAbsolute($,X)}static unsignedRightShift(){throw new TypeError("BigInts have no unsigned right shift; use >> instead")}static lessThan($,X){return 0>M.__compareToBigInt($,X)}static lessThanOrEqual($,X){return 0>=M.__compareToBigInt($,X)}static greaterThan($,X){return 0<M.__compareToBigInt($,X)}static greaterThanOrEqual($,X){return 0<=M.__compareToBigInt($,X)}static equal($,X){if($.sign!==X.sign)return!1;if($.length!==X.length)return!1;for(let Y=0;Y<$.length;Y++)if($.__digit(Y)!==X.__digit(Y))return!1;return!0}static notEqual($,X){return!M.equal($,X)}static bitwiseAnd($,X){var Y=Math.max;if(!$.sign&&!X.sign)return M.__absoluteAnd($,X).__trim();if($.sign&&X.sign){let z=Y($.length,X.length)+1,G=M.__absoluteSubOne($,z),U=M.__absoluteSubOne(X);return G=M.__absoluteOr(G,U,G),M.__absoluteAddOne(G,!0,G).__trim()}return $.sign&&([$,X]=[X,$]),M.__absoluteAndNot($,M.__absoluteSubOne(X)).__trim()}static bitwiseXor($,X){var Y=Math.max;if(!$.sign&&!X.sign)return M.__absoluteXor($,X).__trim();if($.sign&&X.sign){let U=Y($.length,X.length),W=M.__absoluteSubOne($,U),Q=M.__absoluteSubOne(X);return M.__absoluteXor(W,Q,W).__trim()}let z=Y($.length,X.length)+1;$.sign&&([$,X]=[X,$]);let G=M.__absoluteSubOne(X,z);return G=M.__absoluteXor(G,$,G),M.__absoluteAddOne(G,!0,G).__trim()}static bitwiseOr($,X){var Y=Math.max;let z=Y($.length,X.length);if(!$.sign&&!X.sign)return M.__absoluteOr($,X).__trim();if($.sign&&X.sign){let U=M.__absoluteSubOne($,z),W=M.__absoluteSubOne(X);return U=M.__absoluteAnd(U,W,U),M.__absoluteAddOne(U,!0,U).__trim()}$.sign&&([$,X]=[X,$]);let G=M.__absoluteSubOne(X,z);return G=M.__absoluteAndNot(G,$,G),M.__absoluteAddOne(G,!0,G).__trim()}static asIntN($,X){var Y=Math.floor;if(X.length===0)return X;if($=Y($),0>$)throw new RangeError("Invalid value: not (convertible to) a safe integer");if($===0)return M.__zero();if($>=M.__kMaxLengthBits)return X;let z=0|($+29)/30;if(X.length<z)return X;let G=X.__unsignedDigit(z-1),U=1<<($-1)%30;if(X.length===z&&G<U)return X;if((G&U)!==U)return M.__truncateToNBits($,X);if(!X.sign)return M.__truncateAndSubFromPowerOfTwo($,X,!0);if((G&U-1)==0){for(let W=z-2;0<=W;W--)if(X.__digit(W)!==0)return M.__truncateAndSubFromPowerOfTwo($,X,!1);return X.length===z&&G===U?X:M.__truncateToNBits($,X)}return M.__truncateAndSubFromPowerOfTwo($,X,!1)}static asUintN($,X){var Y=Math.floor;if(X.length===0)return X;if($=Y($),0>$)throw new RangeError("Invalid value: not (convertible to) a safe integer");if($===0)return M.__zero();if(X.sign){if($>M.__kMaxLengthBits)throw new RangeError("BigInt too big");return M.__truncateAndSubFromPowerOfTwo($,X,!1)}if($>=M.__kMaxLengthBits)return X;let z=0|($+29)/30;if(X.length<z)return X;let G=$%30;if(X.length==z){if(G===0)return X;if(X.__digit(z-1)>>>G==0)return X}return M.__truncateToNBits($,X)}static ADD($,X){if($=M.__toPrimitive($),X=M.__toPrimitive(X),typeof $=="string")return typeof X!="string"&&(X=X.toString()),$+X;if(typeof X=="string")return $.toString()+X;if($=M.__toNumeric($),X=M.__toNumeric(X),M.__isBigInt($)&&M.__isBigInt(X))return M.add($,X);if(typeof $=="number"&&typeof X=="number")return $+X;throw new TypeError("Cannot mix BigInt and other types, use explicit conversions")}static LT($,X){return M.__compare($,X,0)}static LE($,X){return M.__compare($,X,1)}static GT($,X){return M.__compare($,X,2)}static GE($,X){return M.__compare($,X,3)}static EQ($,X){for(;;){if(M.__isBigInt($))return M.__isBigInt(X)?M.equal($,X):M.EQ(X,$);if(typeof $=="number"){if(M.__isBigInt(X))return M.__equalToNumber(X,$);if(typeof X!="object")return $==X;X=M.__toPrimitive(X)}else if(typeof $=="string"){if(M.__isBigInt(X))return $=M.__fromString($),$!==null&&M.equal($,X);if(typeof X!="object")return $==X;X=M.__toPrimitive(X)}else if(typeof $=="boolean"){if(M.__isBigInt(X))return M.__equalToNumber(X,+$);if(typeof X!="object")return $==X;X=M.__toPrimitive(X)}else if(typeof $=="symbol"){if(M.__isBigInt(X))return!1;if(typeof X!="object")return $==X;X=M.__toPrimitive(X)}else if(typeof $=="object"){if(typeof X=="object"&&X.constructor!==M)return $==X;$=M.__toPrimitive($)}else return $==X}}static NE($,X){return!M.EQ($,X)}static DataViewGetBigInt64($,X,Y=!1){return M.asIntN(64,M.DataViewGetBigUint64($,X,Y))}static DataViewGetBigUint64($,X,Y=!1){let[z,G]=Y?[4,0]:[0,4],U=$.getUint32(X+z,Y),W=$.getUint32(X+G,Y),Q=new M(3,!1);return Q.__setDigit(0,1073741823&W),Q.__setDigit(1,(268435455&U)<<2|W>>>30),Q.__setDigit(2,U>>>28),Q.__trim()}static DataViewSetBigInt64($,X,Y,z=!1){M.DataViewSetBigUint64($,X,Y,z)}static DataViewSetBigUint64($,X,Y,z=!1){Y=M.asUintN(64,Y);let G=0,U=0;if(0<Y.length&&(U=Y.__digit(0),1<Y.length)){let Z=Y.__digit(1);U|=Z<<30,G=Z>>>2,2<Y.length&&(G|=Y.__digit(2)<<28)}let[W,Q]=z?[4,0]:[0,4];$.setUint32(X+W,G,z),$.setUint32(X+Q,U,z)}static __zero(){return new M(0,!1)}static __oneDigit($,X){let Y=new M(1,X);return Y.__setDigit(0,$),Y}__copy(){let $=new M(this.length,this.sign);for(let X=0;X<this.length;X++)$[X]=this[X];return $}__trim(){let $=this.length,X=this[$-1];for(;X===0;)$--,X=this[$-1],this.pop();return $===0&&(this.sign=!1),this}__initializeDigits(){for(let $=0;$<this.length;$++)this[$]=0}static __decideRounding($,X,Y,z){if(0<X)return-1;let G;if(0>X)G=-X-1;else{if(Y===0)return-1;Y--,z=$.__digit(Y),G=29}let U=1<<G;if((z&U)==0)return-1;if(U-=1,(z&U)!=0)return 1;for(;0<Y;)if(Y--,$.__digit(Y)!==0)return 1;return 0}static __fromDouble($){M.__kBitConversionDouble[0]=$;let X=2047&M.__kBitConversionInts[M.__kBitConversionIntHigh]>>>20,Y=X-1023,z=(0|Y/30)+1,G=new M(z,0>$),U=1048575&M.__kBitConversionInts[M.__kBitConversionIntHigh]|1048576,W=M.__kBitConversionInts[M.__kBitConversionIntLow],Q=20,Z=Y%30,H,O=0;if(Z<20){let w=Q-Z;O=w+32,H=U>>>w,U=U<<32-w|W>>>w,W<<=32-w}else if(Z===20)O=32,H=U,U=W,W=0;else{let w=Z-Q;O=32-w,H=U<<w|W>>>32-w,U=W<<w,W=0}G.__setDigit(z-1,H);for(let w=z-2;0<=w;w--)0<O?(O-=30,H=U>>>2,U=U<<30|W>>>2,W<<=30):H=0,G.__setDigit(w,H);return G.__trim()}static __isWhitespace($){return 13>=$&&9<=$||(159>=$?$==32:131071>=$?$==160||$==5760:196607>=$?($&=131071,10>=$||$==40||$==41||$==47||$==95||$==4096):$==65279)}static __fromString($,X=0){let Y=0,z=$.length,G=0;if(G===z)return M.__zero();let U=$.charCodeAt(G);for(;M.__isWhitespace(U);){if(++G===z)return M.__zero();U=$.charCodeAt(G)}if(U===43){if(++G===z)return null;U=$.charCodeAt(G),Y=1}else if(U===45){if(++G===z)return null;U=$.charCodeAt(G),Y=-1}if(X===0){if(X=10,U===48){if(++G===z)return M.__zero();if(U=$.charCodeAt(G),U===88||U===120){if(X=16,++G===z)return null;U=$.charCodeAt(G)}else if(U===79||U===111){if(X=8,++G===z)return null;U=$.charCodeAt(G)}else if(U===66||U===98){if(X=2,++G===z)return null;U=$.charCodeAt(G)}}}else if(X===16&&U===48){if(++G===z)return M.__zero();if(U=$.charCodeAt(G),U===88||U===120){if(++G===z)return null;U=$.charCodeAt(G)}}if(Y!=0&&X!==10)return null;for(;U===48;){if(++G===z)return M.__zero();U=$.charCodeAt(G)}let W=z-G,Q=M.__kMaxBitsPerChar[X],Z=M.__kBitsPerCharTableMultiplier-1;if(W>1073741824/Q)return null;let H=Q*W+Z>>>M.__kBitsPerCharTableShift,O=new M(0|(H+29)/30,!1),w=10>X?X:10,V=10<X?X-10:0;if((X&X-1)==0){Q>>=M.__kBitsPerCharTableShift;let D=[],N=[],F=!1;do{let L=0,K=0;for(;;){let q;if(U-48>>>0<w)q=U-48;else if((32|U)-97>>>0<V)q=(32|U)-87;else{F=!0;break}if(K+=Q,L=L<<Q|q,++G===z){F=!0;break}if(U=$.charCodeAt(G),30<K+Q)break}D.push(L),N.push(K)}while(!F);M.__fillFromParts(O,D,N)}else{O.__initializeDigits();let D=!1,N=0;do{let F=0,L=1;for(;;){let q;if(U-48>>>0<w)q=U-48;else if((32|U)-97>>>0<V)q=(32|U)-87;else{D=!0;break}let R=L*X;if(1073741823<R)break;if(L=R,F=F*X+q,N++,++G===z){D=!0;break}U=$.charCodeAt(G)}Z=30*M.__kBitsPerCharTableMultiplier-1;let K=0|(Q*N+Z>>>M.__kBitsPerCharTableShift)/30;O.__inplaceMultiplyAdd(L,F,K)}while(!D)}if(G!==z){if(!M.__isWhitespace(U))return null;for(G++;G<z;G++)if(U=$.charCodeAt(G),!M.__isWhitespace(U))return null}return O.sign=Y==-1,O.__trim()}static __fillFromParts($,X,Y){let z=0,G=0,U=0;for(let W=X.length-1;0<=W;W--){let Q=X[W],Z=Y[W];G|=Q<<U,U+=Z,U===30?($.__setDigit(z++,G),U=0,G=0):30<U&&($.__setDigit(z++,1073741823&G),U-=30,G=Q>>>Z-U)}if(G!==0){if(z>=$.length)throw new Error("implementation bug");$.__setDigit(z++,G)}for(;z<$.length;z++)$.__setDigit(z,0)}static __toStringBasePowerOfTwo($,X){let Y=$.length,z=X-1;z=(85&z>>>1)+(85&z),z=(51&z>>>2)+(51&z),z=(15&z>>>4)+(15&z);let G=z,U=X-1,W=$.__digit(Y-1),Q=M.__clz30(W),Z=0|(30*Y-Q+G-1)/G;if($.sign&&Z++,268435456<Z)throw new Error("string too long");let H=Array(Z),O=Z-1,w=0,V=0;for(let N=0;N<Y-1;N++){let F=$.__digit(N),L=(w|F<<V)&U;H[O--]=M.__kConversionChars[L];let K=G-V;for(w=F>>>K,V=30-K;V>=G;)H[O--]=M.__kConversionChars[w&U],w>>>=G,V-=G}let D=(w|W<<V)&U;for(H[O--]=M.__kConversionChars[D],w=W>>>G-V;w!==0;)H[O--]=M.__kConversionChars[w&U],w>>>=G;if($.sign&&(H[O--]="-"),O!=-1)throw new Error("implementation bug");return H.join("")}static __toStringGeneric($,X,Y){let z=$.length;if(z===0)return"";if(z===1){let N=$.__unsignedDigit(0).toString(X);return Y===!1&&$.sign&&(N="-"+N),N}let G=30*z-M.__clz30($.__digit(z-1)),U=M.__kMaxBitsPerChar[X],W=U-1,Q=G*M.__kBitsPerCharTableMultiplier;Q+=W-1,Q=0|Q/W;let Z=Q+1>>1,H=M.exponentiate(M.__oneDigit(X,!1),M.__oneDigit(Z,!1)),O,w,V=H.__unsignedDigit(0);if(H.length===1&&32767>=V){O=new M($.length,!1),O.__initializeDigits();let N=0;for(let F=2*$.length-1;0<=F;F--){let L=N<<15|$.__halfDigit(F);O.__setHalfDigit(F,0|L/V),N=0|L%V}w=N.toString(X)}else{let N=M.__absoluteDivLarge($,H,!0,!0);O=N.quotient;let F=N.remainder.__trim();w=M.__toStringGeneric(F,X,!0)}O.__trim();let D=M.__toStringGeneric(O,X,!0);for(;w.length<Z;)w="0"+w;return Y===!1&&$.sign&&(D="-"+D),D+w}static __unequalSign($){return $?-1:1}static __absoluteGreater($){return $?-1:1}static __absoluteLess($){return $?1:-1}static __compareToBigInt($,X){let Y=$.sign;if(Y!==X.sign)return M.__unequalSign(Y);let z=M.__absoluteCompare($,X);return 0<z?M.__absoluteGreater(Y):0>z?M.__absoluteLess(Y):0}static __compareToNumber($,X){if(M.__isOneDigitInt(X)){let Y=$.sign,z=0>X;if(Y!==z)return M.__unequalSign(Y);if($.length===0){if(z)throw new Error("implementation bug");return X===0?0:-1}if(1<$.length)return M.__absoluteGreater(Y);let G=Math.abs(X),U=$.__unsignedDigit(0);return U>G?M.__absoluteGreater(Y):U<G?M.__absoluteLess(Y):0}return M.__compareToDouble($,X)}static __compareToDouble($,X){if(X!==X)return X;if(X===1/0)return-1;if(X===-1/0)return 1;let Y=$.sign;if(Y!==0>X)return M.__unequalSign(Y);if(X===0)throw new Error("implementation bug: should be handled elsewhere");if($.length===0)return-1;M.__kBitConversionDouble[0]=X;let z=2047&M.__kBitConversionInts[M.__kBitConversionIntHigh]>>>20;if(z==2047)throw new Error("implementation bug: handled elsewhere");let G=z-1023;if(0>G)return M.__absoluteGreater(Y);let U=$.length,W=$.__digit(U-1),Q=M.__clz30(W),Z=30*U-Q,H=G+1;if(Z<H)return M.__absoluteLess(Y);if(Z>H)return M.__absoluteGreater(Y);let O=1048576|1048575&M.__kBitConversionInts[M.__kBitConversionIntHigh],w=M.__kBitConversionInts[M.__kBitConversionIntLow],V=20,D=29-Q;if(D!==(0|(Z-1)%30))throw new Error("implementation bug");let N,F=0;if(20>D){let L=V-D;F=L+32,N=O>>>L,O=O<<32-L|w>>>L,w<<=32-L}else if(D===20)F=32,N=O,O=w,w=0;else{let L=D-V;F=32-L,N=O<<L|w>>>32-L,O=w<<L,w=0}if(W>>>=0,N>>>=0,W>N)return M.__absoluteGreater(Y);if(W<N)return M.__absoluteLess(Y);for(let L=U-2;0<=L;L--){0<F?(F-=30,N=O>>>2,O=O<<30|w>>>2,w<<=30):N=0;let K=$.__unsignedDigit(L);if(K>N)return M.__absoluteGreater(Y);if(K<N)return M.__absoluteLess(Y)}if(O!==0||w!==0){if(F===0)throw new Error("implementation bug");return M.__absoluteLess(Y)}return 0}static __equalToNumber($,X){var Y=Math.abs;return M.__isOneDigitInt(X)?X===0?$.length===0:$.length===1&&$.sign===0>X&&$.__unsignedDigit(0)===Y(X):M.__compareToDouble($,X)===0}static __comparisonResultToBool($,X){return X===0?0>$:X===1?0>=$:X===2?0<$:X===3?0<=$:void 0}static __compare($,X,Y){if($=M.__toPrimitive($),X=M.__toPrimitive(X),typeof $=="string"&&typeof X=="string")switch(Y){case 0:return $<X;case 1:return $<=X;case 2:return $>X;case 3:return $>=X}if(M.__isBigInt($)&&typeof X=="string")return X=M.__fromString(X),X!==null&&M.__comparisonResultToBool(M.__compareToBigInt($,X),Y);if(typeof $=="string"&&M.__isBigInt(X))return $=M.__fromString($),$!==null&&M.__comparisonResultToBool(M.__compareToBigInt($,X),Y);if($=M.__toNumeric($),X=M.__toNumeric(X),M.__isBigInt($)){if(M.__isBigInt(X))return M.__comparisonResultToBool(M.__compareToBigInt($,X),Y);if(typeof X!="number")throw new Error("implementation bug");return M.__comparisonResultToBool(M.__compareToNumber($,X),Y)}if(typeof $!="number")throw new Error("implementation bug");if(M.__isBigInt(X))return M.__comparisonResultToBool(M.__compareToNumber(X,$),2^Y);if(typeof X!="number")throw new Error("implementation bug");return Y===0?$<X:Y===1?$<=X:Y===2?$>X:Y===3?$>=X:void 0}__clzmsd(){return M.__clz30(this.__digit(this.length-1))}static __absoluteAdd($,X,Y){if($.length<X.length)return M.__absoluteAdd(X,$,Y);if($.length===0)return $;if(X.length===0)return $.sign===Y?$:M.unaryMinus($);let z=$.length;($.__clzmsd()===0||X.length===$.length&&X.__clzmsd()===0)&&z++;let G=new M(z,Y),U=0,W=0;for(;W<X.length;W++){let Q=$.__digit(W)+X.__digit(W)+U;U=Q>>>30,G.__setDigit(W,1073741823&Q)}for(;W<$.length;W++){let Q=$.__digit(W)+U;U=Q>>>30,G.__setDigit(W,1073741823&Q)}return W<G.length&&G.__setDigit(W,U),G.__trim()}static __absoluteSub($,X,Y){if($.length===0)return $;if(X.length===0)return $.sign===Y?$:M.unaryMinus($);let z=new M($.length,Y),G=0,U=0;for(;U<X.length;U++){let W=$.__digit(U)-X.__digit(U)-G;G=1&W>>>30,z.__setDigit(U,1073741823&W)}for(;U<$.length;U++){let W=$.__digit(U)-G;G=1&W>>>30,z.__setDigit(U,1073741823&W)}return z.__trim()}static __absoluteAddOne($,X,Y=null){let z=$.length;Y===null?Y=new M(z,X):Y.sign=X;let G=1;for(let U=0;U<z;U++){let W=$.__digit(U)+G;G=W>>>30,Y.__setDigit(U,1073741823&W)}return G!=0&&Y.__setDigitGrow(z,1),Y}static __absoluteSubOne($,X){let Y=$.length;X=X||Y;let z=new M(X,!1),G=1;for(let U=0;U<Y;U++){let W=$.__digit(U)-G;G=1&W>>>30,z.__setDigit(U,1073741823&W)}if(G!=0)throw new Error("implementation bug");for(let U=Y;U<X;U++)z.__setDigit(U,0);return z}static __absoluteAnd($,X,Y=null){let z=$.length,G=X.length,U=G;if(z<G){U=z;let Z=$,H=z;$=X,z=G,X=Z,G=H}let W=U;Y===null?Y=new M(W,!1):W=Y.length;let Q=0;for(;Q<U;Q++)Y.__setDigit(Q,$.__digit(Q)&X.__digit(Q));for(;Q<W;Q++)Y.__setDigit(Q,0);return Y}static __absoluteAndNot($,X,Y=null){let z=$.length,G=X.length,U=G;z<G&&(U=z);let W=z;Y===null?Y=new M(W,!1):W=Y.length;let Q=0;for(;Q<U;Q++)Y.__setDigit(Q,$.__digit(Q)&~X.__digit(Q));for(;Q<z;Q++)Y.__setDigit(Q,$.__digit(Q));for(;Q<W;Q++)Y.__setDigit(Q,0);return Y}static __absoluteOr($,X,Y=null){let z=$.length,G=X.length,U=G;if(z<G){U=z;let Z=$,H=z;$=X,z=G,X=Z,G=H}let W=z;Y===null?Y=new M(W,!1):W=Y.length;let Q=0;for(;Q<U;Q++)Y.__setDigit(Q,$.__digit(Q)|X.__digit(Q));for(;Q<z;Q++)Y.__setDigit(Q,$.__digit(Q));for(;Q<W;Q++)Y.__setDigit(Q,0);return Y}static __absoluteXor($,X,Y=null){let z=$.length,G=X.length,U=G;if(z<G){U=z;let Z=$,H=z;$=X,z=G,X=Z,G=H}let W=z;Y===null?Y=new M(W,!1):W=Y.length;let Q=0;for(;Q<U;Q++)Y.__setDigit(Q,$.__digit(Q)^X.__digit(Q));for(;Q<z;Q++)Y.__setDigit(Q,$.__digit(Q));for(;Q<W;Q++)Y.__setDigit(Q,0);return Y}static __absoluteCompare($,X){let Y=$.length-X.length;if(Y!=0)return Y;let z=$.length-1;for(;0<=z&&$.__digit(z)===X.__digit(z);)z--;return 0>z?0:$.__unsignedDigit(z)>X.__unsignedDigit(z)?1:-1}static __multiplyAccumulate($,X,Y,z){if(X===0)return;let G=32767&X,U=X>>>15,W=0,Q=0;for(let Z,H=0;H<$.length;H++,z++){Z=Y.__digit(z);let O=$.__digit(H),w=32767&O,V=O>>>15,D=M.__imul(w,G),N=M.__imul(w,U),F=M.__imul(V,G),L=M.__imul(V,U);Z+=Q+D+W,W=Z>>>30,Z&=1073741823,Z+=((32767&N)<<15)+((32767&F)<<15),W+=Z>>>30,Q=L+(N>>>15)+(F>>>15),Y.__setDigit(z,1073741823&Z)}for(;W!=0||Q!==0;z++){let Z=Y.__digit(z);Z+=W+Q,Q=0,W=Z>>>30,Y.__setDigit(z,1073741823&Z)}}static __internalMultiplyAdd($,X,Y,z,G){let U=Y,W=0;for(let Q=0;Q<z;Q++){let Z=$.__digit(Q),H=M.__imul(32767&Z,X),O=M.__imul(Z>>>15,X),w=H+((32767&O)<<15)+W+U;U=w>>>30,W=O>>>15,G.__setDigit(Q,1073741823&w)}if(G.length>z)for(G.__setDigit(z++,U+W);z<G.length;)G.__setDigit(z++,0);else if(U+W!==0)throw new Error("implementation bug")}__inplaceMultiplyAdd($,X,Y){Y>this.length&&(Y=this.length);let z=32767&$,G=$>>>15,U=0,W=X;for(let Q=0;Q<Y;Q++){let Z=this.__digit(Q),H=32767&Z,O=Z>>>15,w=M.__imul(H,z),V=M.__imul(H,G),D=M.__imul(O,z),N=M.__imul(O,G),F=W+w+U;U=F>>>30,F&=1073741823,F+=((32767&V)<<15)+((32767&D)<<15),U+=F>>>30,W=N+(V>>>15)+(D>>>15),this.__setDigit(Q,1073741823&F)}if(U!=0||W!==0)throw new Error("implementation bug")}static __absoluteDivSmall($,X,Y=null){Y===null&&(Y=new M($.length,!1));let z=0;for(let G,U=2*$.length-1;0<=U;U-=2){G=(z<<15|$.__halfDigit(U))>>>0;let W=0|G/X;z=0|G%X,G=(z<<15|$.__halfDigit(U-1))>>>0;let Q=0|G/X;z=0|G%X,Y.__setDigit(U>>>1,W<<15|Q)}return Y}static __absoluteModSmall($,X){let Y=0;for(let z=2*$.length-1;0<=z;z--)Y=0|((Y<<15|$.__halfDigit(z))>>>0)%X;return Y}static __absoluteDivLarge($,X,Y,z){let G=X.__halfDigitLength(),U=X.length,W=$.__halfDigitLength()-G,Q=null;Y&&(Q=new M(W+2>>>1,!1),Q.__initializeDigits());let Z=new M(G+2>>>1,!1);Z.__initializeDigits();let H=M.__clz15(X.__halfDigit(G-1));0<H&&(X=M.__specialLeftShift(X,H,0));let O=M.__specialLeftShift($,H,1),w=X.__halfDigit(G-1),V=0;for(let D,N=W;0<=N;N--){D=32767;let F=O.__halfDigit(N+G);if(F!==w){let K=(F<<15|O.__halfDigit(N+G-1))>>>0;D=0|K/w;let q=0|K%w,R=X.__halfDigit(G-2),_=O.__halfDigit(N+G-2);for(;M.__imul(D,R)>>>0>(q<<16|_)>>>0&&(D--,q+=w,!(32767<q)););}M.__internalMultiplyAdd(X,D,0,U,Z);let L=O.__inplaceSub(Z,N,G+1);L!==0&&(L=O.__inplaceAdd(X,N,G),O.__setHalfDigit(N+G,32767&O.__halfDigit(N+G)+L),D--),Y&&(1&N?V=D<<15:Q.__setDigit(N>>>1,V|D))}if(z)return O.__inplaceRightShift(H),Y?{quotient:Q,remainder:O}:O;if(Y)return Q;throw new Error("unreachable")}static __clz15($){return M.__clz30($)-15}__inplaceAdd($,X,Y){let z=0;for(let G=0;G<Y;G++){let U=this.__halfDigit(X+G)+$.__halfDigit(G)+z;z=U>>>15,this.__setHalfDigit(X+G,32767&U)}return z}__inplaceSub($,X,Y){let z=0;if(1&X){X>>=1;let G=this.__digit(X),U=32767&G,W=0;for(;W<Y-1>>>1;W++){let H=$.__digit(W),O=(G>>>15)-(32767&H)-z;z=1&O>>>15,this.__setDigit(X+W,(32767&O)<<15|32767&U),G=this.__digit(X+W+1),U=(32767&G)-(H>>>15)-z,z=1&U>>>15}let Q=$.__digit(W),Z=(G>>>15)-(32767&Q)-z;if(z=1&Z>>>15,this.__setDigit(X+W,(32767&Z)<<15|32767&U),X+W+1>=this.length)throw new RangeError("out of bounds");(1&Y)==0&&(G=this.__digit(X+W+1),U=(32767&G)-(Q>>>15)-z,z=1&U>>>15,this.__setDigit(X+$.length,1073709056&G|32767&U))}else{X>>=1;let G=0;for(;G<$.length-1;G++){let H=this.__digit(X+G),O=$.__digit(G),w=(32767&H)-(32767&O)-z;z=1&w>>>15;let V=(H>>>15)-(O>>>15)-z;z=1&V>>>15,this.__setDigit(X+G,(32767&V)<<15|32767&w)}let U=this.__digit(X+G),W=$.__digit(G),Q=(32767&U)-(32767&W)-z;z=1&Q>>>15;let Z=0;(1&Y)==0&&(Z=(U>>>15)-(W>>>15)-z,z=1&Z>>>15),this.__setDigit(X+G,(32767&Z)<<15|32767&Q)}return z}__inplaceRightShift($){if($===0)return;let X=this.__digit(0)>>>$,Y=this.length-1;for(let z=0;z<Y;z++){let G=this.__digit(z+1);this.__setDigit(z,1073741823&G<<30-$|X),X=G>>>$}this.__setDigit(Y,X)}static __specialLeftShift($,X,Y){let z=$.length,G=new M(z+Y,!1);if(X===0){for(let W=0;W<z;W++)G.__setDigit(W,$.__digit(W));return 0<Y&&G.__setDigit(z,0),G}let U=0;for(let W=0;W<z;W++){let Q=$.__digit(W);G.__setDigit(W,1073741823&Q<<X|U),U=Q>>>30-X}return 0<Y&&G.__setDigit(z,U),G}static __leftShiftByAbsolute($,X){let Y=M.__toShiftAmount(X);if(0>Y)throw new RangeError("BigInt too big");let z=0|Y/30,G=Y%30,U=$.length,W=G!==0&&$.__digit(U-1)>>>30-G!=0,Q=U+z+(W?1:0),Z=new M(Q,$.sign);if(G===0){let H=0;for(;H<z;H++)Z.__setDigit(H,0);for(;H<Q;H++)Z.__setDigit(H,$.__digit(H-z))}else{let H=0;for(let O=0;O<z;O++)Z.__setDigit(O,0);for(let O=0;O<U;O++){let w=$.__digit(O);Z.__setDigit(O+z,1073741823&w<<G|H),H=w>>>30-G}if(W)Z.__setDigit(U+z,H);else if(H!==0)throw new Error("implementation bug")}return Z.__trim()}static __rightShiftByAbsolute($,X){let{length:Y,sign:z}=$,G=M.__toShiftAmount(X);if(0>G)return M.__rightShiftByMaximum(z);let U=0|G/30,W=G%30,Q=Y-U;if(0>=Q)return M.__rightShiftByMaximum(z);let Z=!1;if(z){if(($.__digit(U)&(1<<W)-1)!=0)Z=!0;else for(let O=0;O<U;O++)if($.__digit(O)!==0){Z=!0;break}}if(Z&&W===0)~$.__digit(Y-1)==0&&Q++;let H=new M(Q,z);if(W===0){H.__setDigit(Q-1,0);for(let O=U;O<Y;O++)H.__setDigit(O-U,$.__digit(O))}else{let O=$.__digit(U)>>>W,w=Y-U-1;for(let V=0;V<w;V++){let D=$.__digit(V+U+1);H.__setDigit(V,1073741823&D<<30-W|O),O=D>>>W}H.__setDigit(w,O)}return Z&&(H=M.__absoluteAddOne(H,!0,H)),H.__trim()}static __rightShiftByMaximum($){return $?M.__oneDigit(1,!0):M.__zero()}static __toShiftAmount($){if(1<$.length)return-1;let X=$.__unsignedDigit(0);return X>M.__kMaxLengthBits?-1:X}static __toPrimitive($,X="default"){if(typeof $!="object")return $;if($.constructor===M)return $;if(typeof Symbol!="undefined"&&typeof Symbol.toPrimitive=="symbol"&&$[Symbol.toPrimitive]){let G=$[Symbol.toPrimitive](X);if(typeof G!="object")return G;throw new TypeError("Cannot convert object to primitive value")}let Y=$.valueOf;if(Y){let G=Y.call($);if(typeof G!="object")return G}let z=$.toString;if(z){let G=z.call($);if(typeof G!="object")return G}throw new TypeError("Cannot convert object to primitive value")}static __toNumeric($){return M.__isBigInt($)?$:+$}static __isBigInt($){return typeof $=="object"&&$!==null&&$.constructor===M}static __truncateToNBits($,X){let Y=0|($+29)/30,z=new M(Y,X.sign),G=Y-1;for(let W=0;W<G;W++)z.__setDigit(W,X.__digit(W));let U=X.__digit(G);if($%30!=0){let W=32-$%30;U=U<<W>>>W}return z.__setDigit(G,U),z.__trim()}static __truncateAndSubFromPowerOfTwo($,X,Y){var z=Math.min;let G=0|($+29)/30,U=new M(G,Y),W=0,Q=G-1,Z=0;for(let V=z(Q,X.length);W<V;W++){let D=0-X.__digit(W)-Z;Z=1&D>>>30,U.__setDigit(W,1073741823&D)}for(;W<Q;W++)U.__setDigit(W,0|1073741823&-Z);let H=Q<X.length?X.__digit(Q):0,O=$%30,w;if(O==0)w=0-H-Z,w&=1073741823;else{let V=32-O;H=H<<V>>>V;let D=1<<32-V;w=D-H-Z,w&=D-1}return U.__setDigit(Q,w),U.__trim()}__digit($){return this[$]}__unsignedDigit($){return this[$]>>>0}__setDigit($,X){this[$]=0|X}__setDigitGrow($,X){this[$]=0|X}__halfDigitLength(){let $=this.length;return 32767>=this.__unsignedDigit($-1)?2*$-1:2*$}__halfDigit($){return 32767&this[$>>>1]>>>15*(1&$)}__setHalfDigit($,X){let Y=$>>>1,z=this.__digit(Y),G=1&$?32767&z|X<<15:1073709056&z|32767&X;this.__setDigit(Y,G)}static __digitPow($,X){let Y=1;for(;0<X;)1&X&&(Y*=$),X>>>=1,$*=$;return Y}static __detectBigEndian(){return M.__kBitConversionDouble[0]=-0,M.__kBitConversionInts[0]!==0}static __isOneDigitInt($){return(1073741823&$)===$}}M.__kMaxLength=33554432,M.__kMaxLengthBits=M.__kMaxLength<<5,M.__kMaxBitsPerChar=[0,0,32,51,64,75,83,90,96,102,107,111,115,119,122,126,128,131,134,136,139,141,143,145,147,149,151,153,154,156,158,159,160,162,163,165,166],M.__kBitsPerCharTableShift=5,M.__kBitsPerCharTableMultiplier=1<<M.__kBitsPerCharTableShift,M.__kConversionChars=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"],M.__kBitConversionBuffer=new ArrayBuffer(8),M.__kBitConversionDouble=new Float64Array(M.__kBitConversionBuffer),M.__kBitConversionInts=new Int32Array(M.__kBitConversionBuffer),M.__kBitConversionIntHigh=M.__detectBigEndian()?0:1,M.__kBitConversionIntLow=M.__detectBigEndian()?1:0,M.__clz30=Math.clz32?function($){return Math.clz32($)-2}:function($){return $===0?30:0|29-(0|Math.log($>>>0)/Math.LN2)},M.__imul=Math.imul||function($,X){return 0|$*X};var B=M;var w1=B.BigInt(0),u9=B.BigInt(1),zV=B.BigInt(2),jS=B.BigInt(10),BS=B.BigInt(24),IS=B.BigInt(60),xS=B.BigInt(1000),t9=B.BigInt(1e6),b9=B.BigInt(1e9),aL=B.multiply(B.BigInt(3600),b9),SS=B.multiply(IS,b9),R8=B.multiply(aL,BS);function k0($){return typeof $=="bigint"?B.BigInt($.toString(10)):$}function sL($){return B.equal(B.remainder($,zV),w1)}function AX($){return B.lessThan($,w1)?B.unaryMinus($):$}function az($,X){return B.lessThan($,X)?-1:B.greaterThan($,X)?1:0}function v9($,X){return{quotient:B.divide($,X),remainder:B.remainder($,X)}}var ML,LL,N$="slot-epochNanoSeconds",E$="slot-iso-date",W6="slot-iso-date-time",N6="slot-time",p="slot-calendar",eL="slot-date-brand",$J="slot-year-month-brand",XJ="slot-month-day-brand",m$="slot-time-zone",A4="slot-years",K4="slot-months",p4="slot-weeks",_4="slot-days",q4="slot-hours",T4="slot-minutes",R4="slot-seconds",P4="slot-milliseconds",v4="slot-microseconds",d4="slot-nanoseconds",YJ="date",GJ="ym",zJ="md",UJ="time",WJ="datetime",QJ="instant",BX="original",uY="timezone-canonical",gw="timezone-original",C9="calendar-id",ZJ="locale",yw="options",HJ=new WeakMap,mw=Symbol.for("@@Temporal__GetSlots");(ML=globalThis)[mw]||(ML[mw]=function($){return HJ.get($)});var H3=globalThis[mw],uw=Symbol.for("@@Temporal__CreateSlots");(LL=globalThis)[uw]||(LL[uw]=function($){HJ.set($,Object.create(null))});var d0=globalThis[uw];function x4($,...X){if(!$||typeof $!="object")return!1;let Y=H3($);return!!Y&&X.every((z)=>(z in Y))}function E($,X){let Y=H3($)?.[X];if(Y===void 0)throw new TypeError(`Missing internal slot ${X}`);return Y}function R$($,X,Y){let z=H3($);if(z===void 0)throw new TypeError("Missing slots for the given container");if(z[X])throw new TypeError(`${X} already has set`);z[X]=Y}var cw={};function l0($,X){Object.defineProperty($.prototype,Symbol.toStringTag,{value:X,writable:!1,enumerable:!1,configurable:!0});let Y=Object.getOwnPropertyNames($);for(let G=0;G<Y.length;G++){let U=Y[G],W=Object.getOwnPropertyDescriptor($,U);W.configurable&&W.enumerable&&(W.enumerable=!1,Object.defineProperty($,U,W))}let z=Object.getOwnPropertyNames($.prototype);for(let G=0;G<z.length;G++){let U=z[G],W=Object.getOwnPropertyDescriptor($.prototype,U);W.configurable&&W.enumerable&&(W.enumerable=!1,Object.defineProperty($.prototype,U,W))}pw(X,$),pw(`${X}.prototype`,$.prototype)}function pw($,X){let Y=`%${$}%`;if(cw[Y]!==void 0)throw new Error(`intrinsic ${$} already exists`);cw[Y]=X}function X4($){return cw[$]}function pY($,X){let Y=$;if(Y===0)return{div:Y,mod:Y};let z=Math.sign(Y);Y=Math.abs(Y);let G=Math.trunc(1+Math.log10(Y));if(X>=G)return{div:0*z,mod:z*Y};if(X===0)return{div:z*Y,mod:0*z};let U=Y.toPrecision(G);return{div:z*Number.parseInt(U.slice(0,G-X),10),mod:z*Number.parseInt(U.slice(G-X),10)}}function Sw($,X,Y){let z=$,G=Y;if(z===0)return G;let U=Math.sign(z)||Math.sign(G);z=Math.abs(z),G=Math.abs(G);let W=z.toPrecision(Math.trunc(1+Math.log10(z)));if(G===0)return U*Number.parseInt(W+"0".repeat(X),10);let Q=W+G.toPrecision(Math.trunc(1+Math.log10(G))).padStart(X,"0");return U*Number.parseInt(Q,10)}function O3($,X){let Y=X==="negative";switch($){case"ceil":return Y?"zero":"infinity";case"floor":return Y?"infinity":"zero";case"expand":return"infinity";case"trunc":return"zero";case"halfCeil":return Y?"half-zero":"half-infinity";case"halfFloor":return Y?"half-infinity":"half-zero";case"halfExpand":return"half-infinity";case"halfTrunc":return"half-zero";case"halfEven":return"half-even"}}function w3($,X,Y,z,G){return G==="zero"?$:G==="infinity"?X:Y<0?$:Y>0?X:G==="half-zero"?$:G==="half-infinity"?X:z?$:X}class C${constructor($){this.totalNs=k0($),this.sec=B.toNumber(B.divide(this.totalNs,b9)),this.subsec=B.toNumber(B.remainder(this.totalNs,b9))}static validateNew($,X){if(B.greaterThan(AX($),C$.MAX))throw new RangeError(`${X} of duration time units cannot exceed ${C$.MAX} s`);return new C$($)}static fromEpochNsDiff($,X){let Y=B.subtract(k0($),k0(X));return new C$(Y)}static fromComponents($,X,Y,z,G,U){let W=B.add(B.add(B.add(B.add(B.add(B.BigInt(U),B.multiply(B.BigInt(G),xS)),B.multiply(B.BigInt(z),t9)),B.multiply(B.BigInt(Y),b9)),B.multiply(B.BigInt(X),SS)),B.multiply(B.BigInt($),aL));return C$.validateNew(W,"total")}abs(){return new C$(AX(this.totalNs))}add($){return C$.validateNew(B.add(this.totalNs,$.totalNs),"sum")}add24HourDays($){return C$.validateNew(B.add(this.totalNs,B.multiply(B.BigInt($),R8)),"sum")}addToEpochNs($){return B.add(k0($),this.totalNs)}cmp($){return az(this.totalNs,$.totalNs)}divmod($){let{quotient:X,remainder:Y}=v9(this.totalNs,B.BigInt($));return{quotient:B.toNumber(X),remainder:new C$(Y)}}fdiv($){let X=k0($),Y=B.BigInt(X),{quotient:z,remainder:G}=v9(this.totalNs,Y),U=[],W,Q=(B.lessThan(this.totalNs,w1)?-1:1)*Math.sign(B.toNumber(X));for(;!B.equal(G,w1)&&U.length<50;)G=B.multiply(G,jS),{quotient:W,remainder:G}=v9(G,Y),U.push(Math.abs(B.toNumber(W)));return Q*Number(AX(z).toString()+"."+U.join(""))}isZero(){return B.equal(this.totalNs,w1)}round($,X){let Y=k0($);if(B.equal(Y,u9))return this;let{quotient:z,remainder:G}=v9(this.totalNs,Y),U=B.lessThan(this.totalNs,w1)?"negative":"positive",W=B.multiply(AX(z),Y),Q=B.add(W,Y),Z=az(AX(B.multiply(G,zV)),Y),H=O3(X,U),O=B.equal(AX(this.totalNs),W)?W:w3(W,Q,Z,sL(z),H),w=U==="positive"?O:B.unaryMinus(O);return C$.validateNew(w,"rounding")}sign(){return this.cmp(new C$(w1))}subtract($){return C$.validateNew(B.subtract(this.totalNs,$.totalNs),"difference")}}C$.MAX=B.BigInt("9007199254740991999999999"),C$.ZERO=new C$(w1);var JL=/[A-Za-z._][A-Za-z._0-9+-]*/,a9=new RegExp(`(?:${/(?:[+-](?:[01][0-9]|2[0-3])(?::?[0-5][0-9])?)/.source}|(?:${JL.source})(?:\\/(?:${JL.source}))*)`),OJ=/(?:[+-]\d{6}|\d{4})/,sz=/(?:0[1-9]|1[0-2])/,dw=/(?:0[1-9]|[12]\d|3[01])/,kS=new RegExp(`(${OJ.source})(?:-(${sz.source})-(${dw.source})|(${sz.source})(${dw.source}))`),wJ=/(\d{2})(?::(\d{2})(?::(\d{2})(?:[.,](\d{1,9}))?)?|(\d{2})(?:(\d{2})(?:[.,](\d{1,9}))?)?)?/,VJ=/((?:[+-])(?:[01][0-9]|2[0-3])(?::?(?:[0-5][0-9])(?::?(?:[0-5][0-9])(?:[.,](?:\d{1,9}))?)?)?)/,DJ=new RegExp(`([zZ])|${VJ.source}?`),rY=/\[(!)?([a-z_][a-z0-9_-]*)=([A-Za-z0-9]+(?:-[A-Za-z0-9]+)*)\]/g,bS=new RegExp([`^${kS.source}`,`(?:(?:[tT]|\\s+)${wJ.source}(?:${DJ.source})?)?`,`(?:\\[!?(${a9.source})\\])?`,`((?:${rY.source})*)$`].join("")),fS=new RegExp([`^[tT]?${wJ.source}`,`(?:${DJ.source})?`,`(?:\\[!?${a9.source}\\])?`,`((?:${rY.source})*)$`].join("")),hS=new RegExp(`^(${OJ.source})-?(${sz.source})(?:\\[!?${a9.source}\\])?((?:${rY.source})*)$`),gS=new RegExp(`^(?:--)?(${sz.source})-?(${dw.source})(?:\\[!?${a9.source}\\])?((?:${rY.source})*)$`),kw=/(\d+)(?:[.,](\d{1,9}))?/,yS=new RegExp(`(?:${kw.source}H)?(?:${kw.source}M)?(?:${kw.source}S)?`),mS=new RegExp(`^([+-])?P${/(?:(\d+)Y)?(?:(\d+)M)?(?:(\d+)W)?(?:(\d+)D)?/.source}(?:T(?!$)${yS.source})?$`,"i"),P8=86400000,ez=1e6*P8,uS=60000000000,NJ=1e8*P8,nY=m1(NJ),c9=B.unaryMinus(nY),cS=B.add(B.subtract(c9,R8),u9),pS=B.subtract(B.add(nY,R8),u9),dS=146097*P8,AL=-271821,KL=275760,f9=Date.UTC(1847,0,1),lS=["iso8601","hebrew","islamic","islamic-umalqura","islamic-tbla","islamic-civil","islamic-rgsa","islamicc","persian","ethiopic","ethioaa","ethiopic-amete-alem","coptic","chinese","dangi","roc","indian","buddhist","japanese","gregory"],iS=new Set(["ACT","AET","AGT","ART","AST","BET","BST","CAT","CNT","CST","CTT","EAT","ECT","IET","IST","JST","MIT","NET","NST","PLT","PNT","PRT","PST","SST","VST"]);function E6($){return typeof $=="object"&&$!==null||typeof $=="function"}function V3($){if(typeof $=="bigint")throw new TypeError("Cannot convert BigInt to number");return Number($)}function D3($){if(typeof $=="symbol")throw new TypeError("Cannot convert a Symbol value to a String");return String($)}function M$($){let X=V3($);if(X===0)return 0;if(Number.isNaN(X)||X===1/0||X===-1/0)throw new RangeError("invalid number value");let Y=Math.trunc(X);return Y===0?0:Y}function _L($,X){let Y=M$($);if(Y<=0){if(X!==void 0)throw new RangeError(`property '${X}' cannot be a a number less than one`);throw new RangeError("Cannot convert a number less than one to a positive integer")}return Y}function g1($){let X=V3($);if(Number.isNaN(X))throw new RangeError("not a number");if(X===1/0||X===-1/0)throw new RangeError("infinity is out of range");if(!function(Y){if(typeof Y!="number"||Number.isNaN(Y)||Y===1/0||Y===-1/0)return!1;let z=Math.abs(Y);return Math.floor(z)===z}(X))throw new RangeError(`unsupported fractional value ${$}`);return X===0?0:X}function p9($,X){return String($).padStart(X,"0")}function g6($){if(typeof $!="string")throw new TypeError(`expected a string, not ${String($)}`);return $}function lw($,X){if(E6($)){let Y=$?.toString();if(typeof Y=="string"||typeof Y=="number")return Y;throw new TypeError("Cannot convert object to primitive value")}return $}var iw=["era","eraYear","year","month","monthCode","day","hour","minute","second","millisecond","microsecond","nanosecond","offset","timeZone"],rS={era:D3,eraYear:M$,year:M$,month:_L,monthCode:function($){let X=g6(lw($));if(X.length<3||X.length>4||X[0]!=="M"||"0123456789".indexOf(X[1])===-1||"0123456789".indexOf(X[2])===-1||X[1]+X[2]==="00"&&X[3]!=="L"||X[3]!=="L"&&X[3]!==void 0)throw new RangeError(`bad month code ${X}; must match M01-M99 or M00L-M99L`);return X},day:_L,hour:M$,minute:M$,second:M$,millisecond:M$,microsecond:M$,nanosecond:M$,offset:function($){let X=g6(lw($));return U2(X),X},timeZone:B4},nS={hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0},oY=[["years","year","date"],["months","month","date"],["weeks","week","date"],["days","day","date"],["hours","hour","time"],["minutes","minute","time"],["seconds","second","time"],["milliseconds","millisecond","time"],["microseconds","microsecond","time"],["nanoseconds","nanosecond","time"]],qL=Object.fromEntries(oY.map(($)=>[$[0],$[1]])),oS=Object.fromEntries(oY.map(([$,X])=>[X,$])),h9=oY.map(([,$])=>$),tY={day:ez,hour:3600000000000,minute:60000000000,second:1e9,millisecond:1e6,microsecond:1000,nanosecond:1},$3=["days","hours","microseconds","milliseconds","minutes","months","nanoseconds","seconds","weeks","years"],tS=Intl.DateTimeFormat,TL=new Map;function EJ($){let X=n9($),Y=TL.get(X);return Y===void 0&&(Y=new tS("en-us",{timeZone:X,hour12:!1,era:"short",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"}),TL.set(X,Y)),Y}function s6($){return x4($,N$)&&!x4($,m$,p)}function V6($){return x4($,A4,K4,_4,q4,T4,R4,P4,v4,d4)}function D6($){return x4($,eL)}function J6($){return x4($,N6)}function e$($){return x4($,W6)}function e6($){return x4($,$J)}function O1($){return x4($,XJ)}function v$($){return x4($,N$,m$,p)}function k($,X){if(!X($))throw new TypeError("invalid receiver: method called with the wrong type of this-object")}function Y2($){if(x4($,p)||x4($,m$))throw new TypeError("with() does not support a calendar or timeZone property");if(J6($))throw new TypeError("with() does not accept Temporal.PlainTime, use withPlainTime() instead");if($.calendar!==void 0)throw new TypeError("with() does not support a calendar property");if($.timeZone!==void 0)throw new TypeError("with() does not support a timeZone property")}function s9($,X){return X==="never"||X==="auto"&&$==="iso8601"?"":`[${X==="critical"?"!":""}u-ca=${$}]`}function N3($){let X,Y,z=!1;for(rY.lastIndex=0;Y=rY.exec($);){let{1:G,2:U,3:W}=Y;if(U==="u-ca"){if(X===void 0)X=W,z=G==="!";else if(G==="!"||z)throw new RangeError(`Invalid annotations in ${$}: more than one u-ca present with critical flag`)}else if(G==="!")throw new RangeError(`Unrecognized annotation: !${U}=${W}`)}return X}function V0($){let X=bS.exec($);if(!X)throw new RangeError(`invalid RFC 9557 string: ${$}`);let Y=N3(X[16]),z=X[1];if(z==="-000000")throw new RangeError(`invalid RFC 9557 string: ${$}`);let G=+z,U=+(X[2]??X[4]??1),W=+(X[3]??X[5]??1),Q=X[6]!==void 0,Z=+(X[6]??0),H=+(X[7]??X[10]??0),O=+(X[8]??X[11]??0);O===60&&(O=59);let w=(X[9]??X[12]??"")+"000000000",V=+w.slice(0,3),D=+w.slice(3,6),N=+w.slice(6,9),F,L=!1;X[13]?(F=void 0,L=!0):X[14]&&(F=X[14]);let K=X[15];return OV(G,U,W,Z,H,O,V,D,N),{year:G,month:U,day:W,time:Q?{hour:Z,minute:H,second:O,millisecond:V,microsecond:D,nanosecond:N}:"start-of-day",tzAnnotation:K,offset:F,z:L,calendar:Y}}function FJ($){let X=fS.exec($),Y,z,G,U,W,Q,Z;if(X){Z=N3(X[10]),Y=+(X[1]??0),z=+(X[2]??X[5]??0),G=+(X[3]??X[6]??0),G===60&&(G=59);let H=(X[4]??X[7]??"")+"000000000";if(U=+H.slice(0,3),W=+H.slice(3,6),Q=+H.slice(6,9),X[8])throw new RangeError("Z designator not supported for PlainTime")}else{let H,O;if({time:H,z:O,calendar:Z}=V0($),H==="start-of-day")throw new RangeError(`time is missing in string: ${$}`);if(O)throw new RangeError("Z designator not supported for PlainTime");({hour:Y,minute:z,second:G,millisecond:U,microsecond:W,nanosecond:Q}=H)}if(L3(Y,z,G,U,W,Q),/[tT ][0-9][0-9]/.test($))return{hour:Y,minute:z,second:G,millisecond:U,microsecond:W,nanosecond:Q,calendar:Z};try{let{month:H,day:O}=WV($);RX(1972,H,O)}catch{try{let{year:H,month:O}=UV($);RX(H,O,1)}catch{return{hour:Y,minute:z,second:G,millisecond:U,microsecond:W,nanosecond:Q,calendar:Z}}}throw new RangeError(`invalid RFC 9557 time-only string ${$}; may need a T prefix`)}function UV($){let X=hS.exec($),Y,z,G,U;if(X){G=N3(X[3]);let W=X[1];if(W==="-000000")throw new RangeError(`invalid RFC 9557 string: ${$}`);if(Y=+W,z=+X[2],U=1,G!==void 0&&G!=="iso8601")throw new RangeError("YYYY-MM format is only valid with iso8601 calendar")}else{let W;if({year:Y,month:z,calendar:G,day:U,z:W}=V0($),W)throw new RangeError("Z designator not supported for PlainYearMonth")}return{year:Y,month:z,calendar:G,referenceISODay:U}}function WV($){let X=gS.exec($),Y,z,G,U;if(X){if(G=N3(X[3]),Y=+X[1],z=+X[2],G!==void 0&&G!=="iso8601")throw new RangeError("MM-DD format is only valid with iso8601 calendar")}else{let W;if({month:Y,day:z,calendar:G,year:U,z:W}=V0($),W)throw new RangeError("Z designator not supported for PlainMonthDay")}return{month:Y,day:z,calendar:G,referenceISOYear:U}}var MJ=new RegExp(`^${a9.source}$`,"i"),LJ=new RegExp(`^${/([+-])([01][0-9]|2[0-3])(?::?([0-5][0-9])?)?/.source}$`);function JJ($){let X=sS.test($)?"Seconds not allowed in offset time zone":"Invalid time zone";throw new RangeError(`${X}: ${$}`)}function T8($){return MJ.test($)||JJ($),LJ.test($)?{offsetMinutes:U2($)/60000000000}:{tzName:$}}function g9($,X,Y,z){let G=$,U=X,W=Y;switch(z){case"reject":RX(G,U,W);break;case"constrain":({year:G,month:U,day:W}=fJ(G,U,W))}return{year:G,month:U,day:W}}function E3($,X,Y,z,G,U,W){let Q=$,Z=X,H=Y,O=z,w=G,V=U;switch(W){case"reject":L3(Q,Z,H,O,w,V);break;case"constrain":Q=C4(Q,0,23),Z=C4(Z,0,59),H=C4(H,0,59),O=C4(O,0,999),w=C4(w,0,999),V=C4(V,0,999)}return{hour:Q,minute:Z,second:H,millisecond:O,microsecond:w,nanosecond:V}}function AJ($){if(!E6($))throw new TypeError("invalid duration-like");let X={years:void 0,months:void 0,weeks:void 0,days:void 0,hours:void 0,minutes:void 0,seconds:void 0,milliseconds:void 0,microseconds:void 0,nanoseconds:void 0},Y=!1;for(let z=0;z<$3.length;z++){let G=$3[z],U=$[G];U!==void 0&&(Y=!0,X[G]=g1(U))}if(!Y)throw new TypeError("invalid duration-like");return X}function Z4({years:$,months:X,weeks:Y,days:z},G,U,W){return{years:$,months:W??X,weeks:U??Y,days:G??z}}function k$($,X){return{isoDate:$,time:X}}function x$($){return u0($,"overflow",["constrain","reject"],"constrain")}function y9($){return u0($,"disambiguation",["compatible","earlier","later","reject"],"compatible")}function u1($,X){return u0($,"roundingMode",["ceil","floor","expand","trunc","halfCeil","halfFloor","halfExpand","halfTrunc","halfEven"],X)}function tz($,X){return u0($,"offset",["prefer","use","ignore","reject"],X)}function e9($){return u0($,"calendarName",["auto","always","never","critical"],"auto")}function G2($){let X=$.roundingIncrement;if(X===void 0)return 1;let Y=M$(X);if(Y<1||Y>1e9)throw new RangeError(`roundingIncrement must be at least 1 and at most 1e9, not ${X}`);return Y}function z2($,X,Y){let z=Y?X:X-1;if($>z)throw new RangeError(`roundingIncrement must be at least 1 and less than ${z}, not ${$}`);if(X%$!=0)throw new RangeError(`Rounding increment must divide evenly into ${X}`)}function $5($){let X=$.fractionalSecondDigits;if(X===void 0)return"auto";if(typeof X!="number"){if(D3(X)!=="auto")throw new RangeError(`fractionalSecondDigits must be 'auto' or 0 through 9, not ${X}`);return"auto"}let Y=Math.floor(X);if(!Number.isFinite(Y)||Y<0||Y>9)throw new RangeError(`fractionalSecondDigits must be 'auto' or 0 through 9, not ${X}`);return Y}function X5($,X){switch($){case"minute":return{precision:"minute",unit:"minute",increment:1};case"second":return{precision:0,unit:"second",increment:1};case"millisecond":return{precision:3,unit:"millisecond",increment:1};case"microsecond":return{precision:6,unit:"microsecond",increment:1};case"nanosecond":return{precision:9,unit:"nanosecond",increment:1}}switch(X){case"auto":return{precision:X,unit:"nanosecond",increment:1};case 0:return{precision:X,unit:"second",increment:1};case 1:case 2:case 3:return{precision:X,unit:"millisecond",increment:10**(3-X)};case 4:case 5:case 6:return{precision:X,unit:"microsecond",increment:10**(6-X)};case 7:case 8:case 9:return{precision:X,unit:"nanosecond",increment:10**(9-X)};default:throw new RangeError(`fractionalSecondDigits must be 'auto' or 0 through 9, not ${X}`)}}var p0=Symbol("~required~");function i4($,X,Y,z,G=[]){let U=[];for(let H=0;H<oY.length;H++){let O=oY[H],w=O[1],V=O[2];Y!=="datetime"&&Y!==V||U.push(w)}U=U.concat(G);let W=z;W===p0?W=void 0:W!==void 0&&U.push(W);let Q=[];Q=Q.concat(U);for(let H=0;H<U.length;H++){let O=U[H],w=oS[O];w!==void 0&&Q.push(w)}let Z=u0($,X,Q,W);if(Z===void 0&&z===p0)throw new RangeError(`${X} is required`);return Z&&Z in qL?qL[Z]:Z}function bw($){let X=$.relativeTo;if(X===void 0)return{};let Y,z,G,U,W,Q="option",Z=!1;if(E6(X)){if(v$(X))return{zonedRelativeTo:X};if(D6(X))return{plainRelativeTo:X};if(e$(X))return{plainRelativeTo:j4(E(X,W6).isoDate,E(X,p))};G=W5(X);let H=E1(G,X,["year","month","monthCode","day"],["hour","minute","second","millisecond","microsecond","nanosecond","offset","timeZone"],[]);({isoDate:Y,time:z}=G5(G,H,"constrain")),{offset:W,timeZone:U}=H,W===void 0&&(Q="wall")}else{let H,O,w,V,D;if({year:w,month:V,day:D,time:z,calendar:G,tzAnnotation:H,offset:W,z:O}=V0(g6(X)),H)U=B4(H),O?Q="exact":W||(Q="wall"),Z=!0;else if(O)throw new RangeError("Z designator not supported for PlainDate relativeTo; either remove the Z or add a bracketed time zone");G||(G="iso8601"),G=S4(G),Y={year:w,month:V,day:D}}return U===void 0?{plainRelativeTo:j4(Y,G)}:{zonedRelativeTo:Q4(X3(Y,z,Q,Q==="option"?U2(W):0,U,"compatible","reject",Z),U,G)}}function b0($){return E($,A4)!==0?"year":E($,K4)!==0?"month":E($,p4)!==0?"week":E($,_4)!==0?"day":E($,q4)!==0?"hour":E($,T4)!==0?"minute":E($,R4)!==0?"second":E($,P4)!==0?"millisecond":E($,v4)!==0?"microsecond":"nanosecond"}function y0($,X){return h9.indexOf($)>h9.indexOf(X)?X:$}function U0($){return $==="year"||$==="month"||$==="week"}function f0($){return U0($)||$==="day"?"date":"time"}function C8($){return X4("%calendarImpl%")($)}function Y5($){return X4("%calendarImpl%")(E($,p))}function I4($,X,Y="date"){let z=Object.create(null),G=C8($).isoToDate(X,{year:!0,monthCode:!0,day:!0});return z.monthCode=G.monthCode,Y!=="month-day"&&Y!=="date"||(z.day=G.day),Y!=="year-month"&&Y!=="date"||(z.year=G.year),z}function E1($,X,Y,z,G){let U=C8($).extraFields(Y),W=Y.concat(z,U),Q=Object.create(null),Z=!1;W.sort();for(let H=0;H<W.length;H++){let O=W[H],w=X[O];if(w!==void 0)Z=!0,Q[O]=rS[O](w);else if(G!=="partial"){if(G.includes(O))throw new TypeError(`required property '${O}' missing or undefined`);Q[O]=nS[O]}}if(G==="partial"&&!Z)throw new TypeError("no supported properties found");return Q}function rw($,X="complete"){let Y=["hour","microsecond","millisecond","minute","nanosecond","second"],z=!1,G=Object.create(null);for(let U=0;U<Y.length;U++){let W=Y[U],Q=$[W];Q!==void 0?(G[W]=M$(Q),z=!0):X==="complete"&&(G[W]=0)}if(!z)throw new TypeError("invalid time-like");return G}function j9($,X){if(E6($)){if(D6($))return x$(W$(X)),j4(E($,E$),E($,p));if(v$($)){let Z=T1(E($,m$),E($,N$));return x$(W$(X)),j4(Z.isoDate,E($,p))}if(e$($))return x$(W$(X)),j4(E($,W6).isoDate,E($,p));let Q=W5($);return j4(v8(Q,E1(Q,$,["year","month","monthCode","day"],[],[]),x$(W$(X))),Q)}let{year:Y,month:z,day:G,calendar:U,z:W}=V0(g6($));if(W)throw new RangeError("Z designator not supported for PlainDate");return U||(U="iso8601"),U=S4(U),x$(W$(X)),j4({year:Y,month:z,day:G},U)}function G5($,X,Y){return k$(v8($,X,Y),E3(X.hour,X.minute,X.second,X.millisecond,X.microsecond,X.nanosecond,Y))}function B9($,X){let Y,z,G;if(E6($)){if(e$($))return x$(W$(X)),K1(E($,W6),E($,p));if(v$($)){let Q=T1(E($,m$),E($,N$));return x$(W$(X)),K1(Q,E($,p))}if(D6($))return x$(W$(X)),K1(k$(E($,E$),{deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0}),E($,p));G=W5($);let U=E1(G,$,["year","month","monthCode","day"],["hour","minute","second","millisecond","microsecond","nanosecond"],[]),W=x$(W$(X));({isoDate:Y,time:z}=G5(G,U,W))}else{let U,W,Q,Z;if({year:W,month:Q,day:Z,time:z,calendar:G,z:U}=V0(g6($)),U)throw new RangeError("Z designator not supported for PlainDateTime");z==="start-of-day"&&(z={deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0}),OV(W,Q,Z,z.hour,z.minute,z.second,z.millisecond,z.microsecond,z.nanosecond),G||(G="iso8601"),G=S4(G),x$(W$(X)),Y={year:W,month:Q,day:Z}}return K1(k$(Y,z),G)}function q1($){let X=X4("%Temporal.Duration%");if(V6($))return new X(E($,A4),E($,K4),E($,p4),E($,_4),E($,q4),E($,T4),E($,R4),E($,P4),E($,v4),E($,d4));if(!E6($))return function(G){let{years:U,months:W,weeks:Q,days:Z,hours:H,minutes:O,seconds:w,milliseconds:V,microseconds:D,nanoseconds:N}=function(F){let L=mS.exec(F);if(!L)throw new RangeError(`invalid duration: ${F}`);if(L.every((u,Q$)=>Q$<2||u===void 0))throw new RangeError(`invalid duration: ${F}`);let K=L[1]==="-"?-1:1,q=L[2]===void 0?0:M$(L[2])*K,R=L[3]===void 0?0:M$(L[3])*K,_=L[4]===void 0?0:M$(L[4])*K,v=L[5]===void 0?0:M$(L[5])*K,x=L[6]===void 0?0:M$(L[6])*K,S=L[7],m=L[8],$$=L[9],I=L[10],Y$=L[11],l=0,U$=0,K$=0;if(S!==void 0){if(m??$$??I??Y$)throw new RangeError("only the smallest unit can be fractional");K$=3600*M$((S+"000000000").slice(0,9))*K}else if(l=m===void 0?0:M$(m)*K,$$!==void 0){if(I??Y$)throw new RangeError("only the smallest unit can be fractional");K$=60*M$(($$+"000000000").slice(0,9))*K}else U$=I===void 0?0:M$(I)*K,Y$!==void 0&&(K$=M$((Y$+"000000000").slice(0,9))*K);let b$=K$%1000,K6=Math.trunc(K$/1000)%1000,Y4=Math.trunc(K$/1e6)%1000;return U$+=Math.trunc(K$/1e9)%60,l+=Math.trunc(K$/60000000000),J3(q,R,_,v,x,l,U$,Y4,K6,b$),{years:q,months:R,weeks:_,days:v,hours:x,minutes:l,seconds:U$,milliseconds:Y4,microseconds:K6,nanoseconds:b$}}(G);return new(X4("%Temporal.Duration%"))(U,W,Q,Z,H,O,w,V,D,N)}(g6($));let Y={years:0,months:0,weeks:0,days:0,hours:0,minutes:0,seconds:0,milliseconds:0,microseconds:0,nanoseconds:0},z=AJ($);for(let G=0;G<$3.length;G++){let U=$3[G],W=z[U];W!==void 0&&(Y[U]=W)}return new X(Y.years,Y.months,Y.weeks,Y.days,Y.hours,Y.minutes,Y.seconds,Y.milliseconds,Y.microseconds,Y.nanoseconds)}function I9($){let X;if(E6($)){if(s6($)||v$($))return y1(E($,N$));X=lw($)}else X=$;let{year:Y,month:z,day:G,time:U,offset:W,z:Q}=function(F){let L=V0(F);if(!L.z&&!L.offset)throw new RangeError("Temporal.Instant requires a time zone offset");return L}(g6(X)),{hour:Z=0,minute:H=0,second:O=0,millisecond:w=0,microsecond:V=0,nanosecond:D=0}=U==="start-of-day"?{}:U,N=r9(Y,z,G,Z,H,O,w,V,D-(Q?0:U2(W)));return iY(N.isoDate),y1($4(N))}function RL($,X){if(E6($)){if(O1($))return x$(W$(X)),dY(E($,E$),E($,p));let Q;return x4($,p)?Q=E($,p):(Q=$.calendar,Q===void 0&&(Q="iso8601"),Q=U5(Q)),dY(Y3(Q,E1(Q,$,["year","month","monthCode","day"],[],[]),x$(W$(X))),Q)}let{month:Y,day:z,referenceISOYear:G,calendar:U}=WV(g6($));if(U===void 0&&(U="iso8601"),U=S4(U),x$(W$(X)),U==="iso8601")return dY({year:1972,month:Y,day:z},U);let W={year:G,month:Y,day:z};return IX(W),W=Y3(U,I4(U,W,"month-day"),"constrain"),dY(W,U)}function _8($,X){let Y;if(E6($)){if(J6($))return x$(W$(X)),h0(E($,N6));if(e$($))return x$(W$(X)),h0(E($,W6).time);if(v$($)){let H=T1(E($,m$),E($,N$));return x$(W$(X)),h0(H.time)}let{hour:z,minute:G,second:U,millisecond:W,microsecond:Q,nanosecond:Z}=rw($);Y=E3(z,G,U,W,Q,Z,x$(W$(X)))}else Y=FJ(g6($)),x$(W$(X));return h0(Y)}function KJ($){return $===void 0?{deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0}:E(_8($),N6)}function x9($,X){if(E6($)){if(e6($))return x$(W$(X)),lY(E($,E$),E($,p));let Q=W5($);return lY(d9(Q,E1(Q,$,["year","month","monthCode"],[],[]),x$(W$(X))),Q)}let{year:Y,month:z,referenceISODay:G,calendar:U}=UV(g6($));U===void 0&&(U="iso8601"),U=S4(U),x$(W$(X));let W={year:Y,month:z,day:G};return wV(W),W=d9(U,I4(U,W,"year-month"),"constrain"),lY(W,U)}function X3($,X,Y,z,G,U,W,Q){if(X==="start-of-day")return A8(G,$);let Z=k$($,X);if(Y==="wall"||W==="ignore")return H4(G,Z,U);if(Y==="exact"||W==="use"){let w=r9($.year,$.month,$.day,X.hour,X.minute,X.second,X.millisecond,X.microsecond,X.nanosecond-z);iY(w.isoDate);let V=$4(w);return O0(V),V}iY($);let H=$4(Z),O=l9(G,Z);for(let w=0;w<O.length;w++){let V=O[w],D=B.toNumber(B.subtract(H,V)),N=q8(D,60000000000,"halfExpand");if(D===z||Q&&N===z)return V}if(W==="reject"){let w=nw(z),V=i9(Z,"iso8601","auto");throw new RangeError(`Offset ${w} is invalid for ${V} in ${G}`)}return BJ(O,G,Z,U)}function S9($,X){let Y,z,G,U,W,Q,Z,H=!1,O="option";if(E6($)){if(v$($)){let F=W$(X);return y9(F),tz(F,"reject"),x$(F),Q4(E($,N$),E($,m$),E($,p))}W=W5($);let V=E1(W,$,["year","month","monthCode","day"],["hour","minute","second","millisecond","microsecond","nanosecond","offset","timeZone"],["timeZone"]);({offset:U,timeZone:G}=V),U===void 0&&(O="wall");let D=W$(X);Q=y9(D),Z=tz(D,"reject");let N=x$(D);({isoDate:Y,time:z}=G5(W,V,N))}else{let V,D,N,F,L;({year:N,month:F,day:L,time:z,tzAnnotation:V,offset:U,z:D,calendar:W}=function(q){let R=V0(q);if(!R.tzAnnotation)throw new RangeError("Temporal.ZonedDateTime requires a time zone ID in brackets");return R}(g6($))),G=B4(V),D?O="exact":U||(O="wall"),W||(W="iso8601"),W=S4(W),H=!0;let K=W$(X);Q=y9(K),Z=tz(K,"reject"),x$(K),Y={year:N,month:F,day:L}}let w=0;return O==="option"&&(w=U2(U)),Q4(X3(Y,z,O,w,G,Q,Z,H),G,W)}function _J($,X,Y){IX(X),d0($),R$($,E$,X),R$($,p,Y),R$($,eL,!0)}function j4($,X){let Y=X4("%Temporal.PlainDate%"),z=Object.create(Y.prototype);return _J(z,$,X),z}function qJ($,X,Y){PX(X),d0($),R$($,W6,X),R$($,p,Y)}function K1($,X){let Y=X4("%Temporal.PlainDateTime%"),z=Object.create(Y.prototype);return qJ(z,$,X),z}function TJ($,X,Y){IX(X),d0($),R$($,E$,X),R$($,p,Y),R$($,XJ,!0)}function dY($,X){let Y=X4("%Temporal.PlainMonthDay%"),z=Object.create(Y.prototype);return TJ(z,$,X),z}function RJ($,X){d0($),R$($,N6,X)}function h0($){let X=X4("%Temporal.PlainTime%"),Y=Object.create(X.prototype);return RJ(Y,$),Y}function PJ($,X,Y){wV(X),d0($),R$($,E$,X),R$($,p,Y),R$($,$J,!0)}function lY($,X){let Y=X4("%Temporal.PlainYearMonth%"),z=Object.create(Y.prototype);return PJ(z,$,X),z}function vJ($,X){O0(X),d0($),R$($,N$,X)}function y1($){let X=X4("%Temporal.Instant%"),Y=Object.create(X.prototype);return vJ(Y,$),Y}function CJ($,X,Y,z){O0(X),d0($),R$($,N$,X),R$($,m$,Y),R$($,p,z)}function Q4($,X,Y="iso8601"){let z=X4("%Temporal.ZonedDateTime%"),G=Object.create(z.prototype);return CJ(G,$,X,Y),G}function PL($){return iw.filter((X)=>$[X]!==void 0)}function TX($,X,Y){let z=PL(Y),G=C8($).fieldKeysToIgnore(z),U=Object.create(null),W=PL(X);for(let Q=0;Q<iw.length;Q++){let Z,H=iw[Q];W.includes(H)&&!G.includes(H)&&(Z=X[H]),z.includes(H)&&(Z=Y[H]),Z!==void 0&&(U[H]=Z)}return U}function D1($,X,Y,z){let G=C8($).dateAdd(X,Y,z);return IX(G),G}function z5($,X,Y,z){return C8($).dateUntil(X,Y,z)}function U5($){if(E6($)&&x4($,p))return E($,p);let X=g6($);try{return S4(X)}catch{}let Y;try{({calendar:Y}=V0(X))}catch{try{({calendar:Y}=FJ(X))}catch{try{({calendar:Y}=UV(X))}catch{({calendar:Y}=WV(X))}}}return Y||(Y="iso8601"),S4(Y)}function W5($){if(x4($,p))return E($,p);let{calendar:X}=$;return X===void 0?"iso8601":U5(X)}function H0($,X){return S4($)===S4(X)}function v8($,X,Y){let z=C8($);z.resolveFields(X,"date");let G=z.dateToISO(X,Y);return IX(G),G}function d9($,X,Y){let z=C8($);z.resolveFields(X,"year-month"),X.day=1;let G=z.dateToISO(X,Y);return wV(G),G}function Y3($,X,Y){let z=C8($);z.resolveFields(X,"month-day");let G=z.monthDayToISOReferenceDate(X,Y);return IX(G),G}function B4($){if(E6($)&&v$($))return E($,m$);let X=g6($);if(X==="UTC")return"UTC";let{tzName:Y,offsetMinutes:z}=function(U){let{tzAnnotation:W,offset:Q,z:Z}=function(H){if(MJ.test(H))return{tzAnnotation:H,offset:void 0,z:!1};try{let{tzAnnotation:O,offset:w,z:V}=V0(H);if(V||O||w)return{tzAnnotation:O,offset:w,z:V}}catch{}JJ(H)}(U);return W?T8(W):Z?T8("UTC"):Q?T8(Q):void 0}(X);if(z!==void 0)return QV(z);let G=G3(Y);if(!G)throw new RangeError(`Unrecognized time zone ${Y}`);return G.identifier}function jJ($,X){if($===X)return!0;let Y=T8($).offsetMinutes,z=T8(X).offsetMinutes;if(Y===void 0&&z===void 0){let G=G3(X);if(!G)return!1;let U=G3($);return!!U&&U.primaryIdentifier===G.primaryIdentifier}return Y===z}function g0($,X){let Y=T8($).offsetMinutes;return Y!==void 0?60000000000*Y:ow($,X)}function nw($){let X=$<0?"-":"+",Y=Math.abs($),z=Math.floor(Y/3600000000000),G=Math.floor(Y/60000000000)%60,U=Math.floor(Y/1e9)%60,W=Y%1e9;return`${X}${F3(z,G,U,W,U===0&&W===0?"minute":"auto")}`}function T1($,X){let Y=g0($,X),{isoDate:{year:z,month:G,day:U},time:{hour:W,minute:Q,second:Z,millisecond:H,microsecond:O,nanosecond:w}}=SJ(X);return r9(z,G,U,W,Q,Z,H,O,w+Y)}function H4($,X,Y){return BJ(l9($,X),$,X,Y)}function BJ($,X,Y,z){let G=$.length;if(G===1)return $[0];if(G)switch(z){case"compatible":case"earlier":return $[0];case"later":return $[G-1];case"reject":throw new RangeError("multiple instants found")}if(z==="reject")throw new RangeError("multiple instants found");let U=$4(Y),W=B.subtract(U,R8);O0(W);let Q=g0(X,W),Z=B.add(U,R8);O0(Z);let H=g0(X,Z)-Q;switch(z){case"earlier":{let O=C$.fromComponents(0,0,0,0,0,-H),w=aY(Y.time,O);return l9(X,k$(r4(Y.isoDate.year,Y.isoDate.month,Y.isoDate.day+w.deltaDays),w))[0]}case"compatible":case"later":{let O=C$.fromComponents(0,0,0,0,0,H),w=aY(Y.time,O),V=l9(X,k$(r4(Y.isoDate.year,Y.isoDate.month,Y.isoDate.day+w.deltaDays),w));return V[V.length-1]}}}function l9($,X){if($==="UTC")return iY(X.isoDate),[$4(X)];let Y=T8($).offsetMinutes;if(Y!==void 0){let z=r9(X.isoDate.year,X.isoDate.month,X.isoDate.day,X.time.hour,X.time.minute-Y,X.time.second,X.time.millisecond,X.time.microsecond,X.time.nanosecond);iY(z.isoDate);let G=$4(z);return O0(G),[G]}return iY(X.isoDate),function(z,G){let U=$4(G),W=B.subtract(U,R8);B.lessThan(W,c9)&&(W=U);let Q=B.add(U,R8);B.greaterThan(Q,nY)&&(Q=U);let Z=ow(z,W),H=ow(z,Q);return(Z===H?[Z]:[Z,H]).map((w)=>{let V=B.subtract(U,B.BigInt(w)),D=function(N,F){let{epochMilliseconds:L,time:{millisecond:K,microsecond:q,nanosecond:R}}=SJ(F),{year:_,month:v,day:x,hour:S,minute:m,second:$$}=kJ(N,L);return r9(_,v,x,S,m,$$,K,q,R)}(z,V);if(sY(G,D)===0)return O0(V),V}).filter((w)=>w!==void 0)}($,X)}function A8($,X){let Y=k$(X,{deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0}),z=l9($,Y);if(z.length)return z[0];let G=$4(Y),U=B.subtract(G,R8);return O0(U),HV($,U)}function Q5($){let X;return X=$<0||$>9999?($<0?"-":"+")+p9(Math.abs($),6):p9($,4),X}function N1($){return p9($,2)}function IJ($,X){let Y;if(X==="auto"){if($===0)return"";Y=p9($,9).replace(/0+$/,"")}else{if(X===0)return"";Y=p9($,9).slice(0,X)}return`.${Y}`}function F3($,X,Y,z,G){let U=`${N1($)}:${N1(X)}`;return G==="minute"||(U+=`:${N1(Y)}`,U+=IJ(z,G)),U}function vL($,X,Y){let z=X;z===void 0&&(z="UTC");let G=E($,N$),U=i9(T1(z,G),"iso8601",Y,"never"),W="Z";return X!==void 0&&(W=xJ(g0(z,G))),`${U}${W}`}function oz($,X){let Y=E($,A4),z=E($,K4),G=E($,p4),U=E($,_4),W=E($,q4),Q=E($,T4),Z=U3($),H="";Y!==0&&(H+=`${Math.abs(Y)}Y`),z!==0&&(H+=`${Math.abs(z)}M`),G!==0&&(H+=`${Math.abs(G)}W`),U!==0&&(H+=`${Math.abs(U)}D`);let O="";W!==0&&(O+=`${Math.abs(W)}H`),Q!==0&&(O+=`${Math.abs(Q)}M`);let w=C$.fromComponents(0,0,E($,R4),E($,P4),E($,v4),E($,d4));w.isZero()&&!["second","millisecond","microsecond","nanosecond"].includes(b0($))&&X==="auto"||(O+=`${Math.abs(w.sec)}${IJ(Math.abs(w.subsec),X)}S`);let V=`${Z<0?"-":""}P${H}`;return O&&(V=`${V}T${O}`),V}function CL($,X="auto"){let{year:Y,month:z,day:G}=E($,E$);return`${Q5(Y)}-${N1(z)}-${N1(G)}${s9(E($,p),X)}`}function jL({hour:$,minute:X,second:Y,millisecond:z,microsecond:G,nanosecond:U},W){return F3($,X,Y,1e6*z+1000*G+U,W)}function i9($,X,Y,z="auto"){let{isoDate:{year:G,month:U,day:W},time:{hour:Q,minute:Z,second:H,millisecond:O,microsecond:w,nanosecond:V}}=$;return`${Q5(G)}-${N1(U)}-${N1(W)}T${F3(Q,Z,H,1e6*O+1000*w+V,Y)}${s9(X,z)}`}function BL($,X="auto"){let{year:Y,month:z,day:G}=E($,E$),U=`${N1(z)}-${N1(G)}`,W=E($,p);X!=="always"&&X!=="critical"&&W==="iso8601"||(U=`${Q5(Y)}-${U}`);let Q=s9(W,X);return Q&&(U+=Q),U}function IL($,X="auto"){let{year:Y,month:z,day:G}=E($,E$),U=`${Q5(Y)}-${N1(z)}`,W=E($,p);X!=="always"&&X!=="critical"&&W==="iso8601"||(U+=`-${N1(G)}`);let Q=s9(W,X);return Q&&(U+=Q),U}function xL($,X,Y="auto",z="auto",G="auto",U=void 0){let W=E($,N$);if(U){let{unit:O,increment:w,roundingMode:V}=U;W=ew(W,w,O,V)}let Q=E($,m$),Z=g0(Q,W),H=i9(T1(Q,W),"iso8601",X,"never");return G!=="never"&&(H+=xJ(Z)),z!=="never"&&(H+=`[${z==="critical"?"!":""}${Q}]`),H+=s9(E($,p),Y),H}function SL($){return LJ.test($)}function U2($){let X=eS.exec($);if(!X)throw new RangeError(`invalid time zone offset: ${$}; must match \xB1HH:MM[:SS.SSSSSSSSS]`);return(X[1]==="-"?-1:1)*(1e9*(60*(60*+X[2]+ +(X[3]||0))+ +(X[4]||0))+ +((X[5]||0)+"000000000").slice(0,9))}var T9,aS=Object.assign(Object.create(null),{"/":!0,"-":!0,_:!0});function G3($){if(T9===void 0){let U=Intl.supportedValuesOf?.("timeZone");if(U){T9=new Map;for(let W=0;W<U.length;W++){let Q=U[W];T9.set(n9(Q),Q)}}else T9=null}let X=n9($),Y=T9?.get(X);if(Y)return{identifier:Y,primaryIdentifier:Y};try{Y=EJ($).resolvedOptions().timeZone}catch{return}if(X==="antarctica/south_pole"&&(Y="Antarctica/McMurdo"),iS.has($))throw new RangeError(`${$} is a legacy time zone identifier from ICU. Use ${Y} instead`);let z=[...X].map((U,W)=>W===0||aS[X[W-1]]?U.toUpperCase():U).join("").split("/");if(z.length===1)return X==="gb-eire"?{identifier:"GB-Eire",primaryIdentifier:Y}:{identifier:X.length<=3||/[-0-9]/.test(X)?X.toUpperCase():z[0],primaryIdentifier:Y};if(z[0]==="Etc")return{identifier:`Etc/${["Zulu","Greenwich","Universal"].includes(z[1])?z[1]:z[1].toUpperCase()}`,primaryIdentifier:Y};if(z[0]==="Us")return{identifier:`US/${z[1]}`,primaryIdentifier:Y};let G=new Map([["Act","ACT"],["Lhi","LHI"],["Nsw","NSW"],["Dar_Es_Salaam","Dar_es_Salaam"],["Port_Of_Spain","Port_of_Spain"],["Port-Au-Prince","Port-au-Prince"],["Isle_Of_Man","Isle_of_Man"],["Comodrivadavia","ComodRivadavia"],["Knox_In","Knox_IN"],["Dumontdurville","DumontDUrville"],["Mcmurdo","McMurdo"],["Denoronha","DeNoronha"],["Easterisland","EasterIsland"],["Bajanorte","BajaNorte"],["Bajasur","BajaSur"]]);return z[1]=G.get(z[1])??z[1],z.length>2&&(z[2]=G.get(z[2])??z[2]),{identifier:z.join("/"),primaryIdentifier:Y}}function _X($,X){let{year:Y,month:z,day:G,hour:U,minute:W,second:Q}=kJ($,X),Z=X%1000;return Z<0&&(Z+=1000),1e6*(ZV({isoDate:{year:Y,month:z,day:G},time:{hour:U,minute:W,second:Q,millisecond:Z}})-X)}function ow($,X){return _X($,R1(X,"floor"))}function QV($){let X=$<0?"-":"+",Y=Math.abs($);return`${X}${F3(Math.floor(Y/60),Y%60,0,0,"minute")}`}function xJ($){return QV(q8($,uS,"halfExpand")/60000000000)}function ZV({isoDate:{year:$,month:X,day:Y},time:{hour:z,minute:G,second:U,millisecond:W}}){let Q=$%400,Z=($-Q)/400,H=new Date;return H.setUTCHours(z,G,U,W),H.setUTCFullYear(Q,X-1,Y),H.getTime()+dS*Z}function $4($){let X=ZV($),Y=1000*$.time.microsecond+$.time.nanosecond;return B.add(m1(X),B.BigInt(Y))}function SJ($){let X=R1($,"trunc"),Y=B.toNumber(B.remainder($,t9));Y<0&&(Y+=1e6,X-=1);let z=Math.floor(Y/1000)%1000,G=Y%1000,U=new Date(X);return{epochMilliseconds:X,isoDate:{year:U.getUTCFullYear(),month:U.getUTCMonth()+1,day:U.getUTCDate()},time:{hour:U.getUTCHours(),minute:U.getUTCMinutes(),second:U.getUTCSeconds(),millisecond:U.getUTCMilliseconds(),microsecond:z,nanosecond:G}}}function HV($,X){if($==="UTC")return null;let Y=R1(X,"floor");if(Y<f9)return HV($,m1(f9));let z=Date.now(),G=Math.max(Y,z)+366*P8*3,U=Y,W=_X($,U),Q=U,Z=W;for(;W===Z&&U<G;){if(Q=U+2*P8*7,Q>NJ)return null;Z=_X($,Q),W===Z&&(U=Q)}return W===Z?null:m1(dJ((H)=>_X($,H),U,Q,W,Z))}function tw($,X){if($==="UTC")return null;let Y=R1(X,"ceil"),z=Date.now(),G=z+366*P8*3;if(Y>G){let H=tw($,m1(G));if(H===null||B.lessThan(H,m1(z)))return H}if($==="Africa/Casablanca"||$==="Africa/El_Aaiun"){let H=Date.UTC(2088,0,1);if(H<Y)return tw($,m1(H))}let U=Y-1;if(U<f9)return null;let W=_X($,U),Q=U,Z=W;for(;W===Z&&U>f9;){if(Q=U-2*P8*7,Q<f9)return null;Z=_X($,Q),W===Z&&(U=Q)}return W===Z?null:m1(dJ((H)=>_X($,H),Q,U,Z,W))}function kJ($,X){return function(Y){let z=Y.split(/[^\w]+/);if(z.length!==7)throw new RangeError(`expected 7 parts in "${Y}`);let G=+z[0],U=+z[1],W=+z[2],Q=z[3];if(Q[0]==="b"||Q[0]==="B")W=1-W;else if(Q[0]!=="a"&&Q[0]!=="A")throw new RangeError(`Unknown era ${Q} in "${Y}`);let Z=z[4]==="24"?0:+z[4],H=+z[5],O=+z[6];if(!(Number.isFinite(W)&&Number.isFinite(G)&&Number.isFinite(U)&&Number.isFinite(Z)&&Number.isFinite(H)&&Number.isFinite(O)))throw new RangeError(`Invalid number in "${Y}`);return{year:W,month:G,day:U,hour:Z,minute:H,second:O}}(EJ($).format(X))}function z3($){return $!==void 0&&!($%4!=0||$%100==0&&$%400!=0)}function qX($,X){return{standard:[31,28,31,30,31,30,31,31,30,31,30,31],leapyear:[31,29,31,30,31,30,31,31,30,31,30,31]}[z3($)?"leapyear":"standard"][X-1]}function U3($){let X=[E($,A4),E($,K4),E($,p4),E($,_4),E($,q4),E($,T4),E($,R4),E($,P4),E($,v4),E($,d4)];for(let Y=0;Y<X.length;Y++){let z=X[Y];if(z!==0)return z<0?-1:1}return 0}function M3($){let X=["years","months","weeks","days"];for(let Y=0;Y<X.length;Y++){let z=$[X[Y]];if(z!==0)return z<0?-1:1}return 0}function bJ($){let X=M3($.date);return X!==0?X:$.time.sign()}function KX($,X){let Y=$,z=X;if(!Number.isFinite(Y)||!Number.isFinite(z))throw new RangeError("infinity is out of range");return z-=1,Y+=Math.floor(z/12),z%=12,z<0&&(z+=12),z+=1,{year:Y,month:z}}function r4($,X,Y){let z=$,G=X,U=Y;if(!Number.isFinite(U))throw new RangeError("infinity is out of range");({year:z,month:G}=KX(z,G));let W=146097;if(Math.abs(U)>W){let H=Math.trunc(U/W);z+=400*H,U-=H*W}let Q=0,Z=G>2?z:z-1;for(;Q=z3(Z)?366:365,U<-Q;)z-=1,Z-=1,U+=Q;for(Z+=1;Q=z3(Z)?366:365,U>Q;)z+=1,Z+=1,U-=Q;for(;U<1;)({year:z,month:G}=KX(z,G-1)),U+=qX(z,G);for(;U>qX(z,G);)U-=qX(z,G),{year:z,month:G}=KX(z,G+1);return{year:z,month:G,day:U}}function r9($,X,Y,z,G,U,W,Q,Z){let H=K8(z,G,U,W,Q,Z);return k$(r4($,X,Y+H.deltaDays),H)}function K8($,X,Y,z,G,U){let W,Q=$,Z=X,H=Y,O=z,w=G,V=U;({div:W,mod:V}=pY(V,3)),w+=W,V<0&&(w-=1,V+=1000),{div:W,mod:w}=pY(w,3),O+=W,w<0&&(O-=1,w+=1000),H+=Math.trunc(O/1000),O%=1000,O<0&&(H-=1,O+=1000),Z+=Math.trunc(H/60),H%=60,H<0&&(Z-=1,H+=60),Q+=Math.trunc(Z/60),Z%=60,Z<0&&(Q-=1,Z+=60);let D=Math.trunc(Q/24);return Q%=24,Q<0&&(D-=1,Q+=24),D+=0,Q+=0,Z+=0,H+=0,O+=0,w+=0,V+=0,{deltaDays:D,hour:Q,minute:Z,second:H,millisecond:O,microsecond:w,nanosecond:V}}function kL($,X){let Y=Z4($,0);if(M3(Y)===0)return $.days;let z=E(X,E$),G=D1(E(X,p),z,Y,"constrain"),U=vX(z.year,z.month-1,z.day),W=vX(G.year,G.month-1,G.day)-U;return $.days+W}function n4($){return new(X4("%Temporal.Duration%"))(-E($,A4),-E($,K4),-E($,p4),-E($,_4),-E($,q4),-E($,T4),-E($,R4),-E($,P4),-E($,v4),-E($,d4))}function C4($,X,Y){return Math.min(Y,Math.max(X,$))}function fJ($,X,Y){let z=C4(X,1,12);return{year:$,month:z,day:C4(Y,1,qX($,z))}}function i6($,X,Y){if($<X||$>Y)throw new RangeError(`value out of range: ${X} <= ${$} <= ${Y}`)}function RX($,X,Y){i6(X,1,12),i6(Y,1,qX($,X))}function IX($){PX(k$($,{deltaDays:0,hour:12,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0}))}function L3($,X,Y,z,G,U){i6($,0,23),i6(X,0,59),i6(Y,0,59),i6(z,0,999),i6(G,0,999),i6(U,0,999)}function OV($,X,Y,z,G,U,W,Q,Z){RX($,X,Y),L3(z,G,U,W,Q,Z)}function PX($){let X=$4($);(B.lessThan(X,cS)||B.greaterThan(X,pS))&&O0(X)}function aw($){$4($)}function O0($){if(B.lessThan($,c9)||B.greaterThan($,nY))throw new RangeError("date/time value is outside of supported range")}function wV({year:$,month:X}){i6($,AL,KL),$===AL?i6(X,4,12):$===KL&&i6(X,1,9)}function J3($,X,Y,z,G,U,W,Q,Z,H){let O=0,w=[$,X,Y,z,G,U,W,Q,Z,H];for(let K=0;K<w.length;K++){let q=w[K];if(q===1/0||q===-1/0)throw new RangeError("infinite values not allowed as duration fields");if(q!==0){let R=q<0?-1:1;if(O!==0&&R!==O)throw new RangeError("mixed-sign values not allowed as duration fields");O=R}}if(Math.abs($)>=4294967296||Math.abs(X)>=4294967296||Math.abs(Y)>=4294967296)throw new RangeError("years, months, and weeks must be < 2\xB3\xB2");let V=pY(Q,3),D=pY(Z,6),N=pY(H,9),F=pY(1e6*V.mod+1000*D.mod+N.mod,9).div,L=86400*z+3600*G+60*U+W+V.div+D.div+N.div+F;if(!Number.isSafeInteger(L))throw new RangeError("total of duration time units cannot exceed 9007199254740991.999999999 s")}function cY($){return{date:{years:E($,A4),months:E($,K4),weeks:E($,p4),days:E($,_4)},time:C$.fromComponents(E($,q4),E($,T4),E($,R4),E($,P4),E($,v4),E($,d4))}}function Q0($){let X=C$.fromComponents(E($,q4),E($,T4),E($,R4),E($,P4),E($,v4),E($,d4)).add24HourDays(E($,_4));return{date:{years:E($,A4),months:E($,K4),weeks:E($,p4),days:0},time:X}}function hJ($){let X=Q0($),Y=Math.trunc(X.time.sec/86400);return J3(X.date.years,X.date.months,X.date.weeks,Y,0,0,0,0,0,0),{...X.date,days:Y}}function _1($,X){let Y=$.time.sign(),z=$.time.abs().subsec,G=0,U=0,W=$.time.abs().sec,Q=0,Z=0,H=0;switch(X){case"year":case"month":case"week":case"day":G=Math.trunc(z/1000),z%=1000,U=Math.trunc(G/1000),G%=1000,W+=Math.trunc(U/1000),U%=1000,Q=Math.trunc(W/60),W%=60,Z=Math.trunc(Q/60),Q%=60,H=Math.trunc(Z/24),Z%=24;break;case"hour":G=Math.trunc(z/1000),z%=1000,U=Math.trunc(G/1000),G%=1000,W+=Math.trunc(U/1000),U%=1000,Q=Math.trunc(W/60),W%=60,Z=Math.trunc(Q/60),Q%=60;break;case"minute":G=Math.trunc(z/1000),z%=1000,U=Math.trunc(G/1000),G%=1000,W+=Math.trunc(U/1000),U%=1000,Q=Math.trunc(W/60),W%=60;break;case"second":G=Math.trunc(z/1000),z%=1000,U=Math.trunc(G/1000),G%=1000,W+=Math.trunc(U/1000),U%=1000;break;case"millisecond":G=Math.trunc(z/1000),z%=1000,U=Sw(W,3,Math.trunc(G/1000)),G%=1000,W=0;break;case"microsecond":G=Sw(W,6,Math.trunc(z/1000)),z%=1000,W=0;break;case"nanosecond":z=Sw(W,9,z),W=0}return new(X4("%Temporal.Duration%"))($.date.years,$.date.months,$.date.weeks,$.date.days+Y*H,Y*Z,Y*Q,Y*W,Y*U,Y*G,Y*z)}function m0($,X){return M3($),X.sign(),{date:$,time:X}}function vX($,X,Y){return ZV({isoDate:{year:$,month:X+1,day:Y},time:{hour:0,minute:0,second:0,millisecond:0}})/P8}function iY({year:$,month:X,day:Y}){if(Math.abs(vX($,X-1,Y))>1e8)throw new RangeError("date/time value is outside the supported range")}function VV($,X){let Y=X.hour-$.hour,z=X.minute-$.minute,G=X.second-$.second,U=X.millisecond-$.millisecond,W=X.microsecond-$.microsecond,Q=X.nanosecond-$.nanosecond;return C$.fromComponents(Y,z,G,U,W,Q)}function DV($,X,Y,z,G){let U=C$.fromEpochNsDiff(X,$);return U=W3(U,Y,z,G),m0({years:0,months:0,weeks:0,days:0},U)}function gJ($,X,Y,z){aw($),aw(X);let G=VV($.time,X.time),U=G.sign(),W=w0($.isoDate,X.isoDate),Q=X.isoDate;W===U&&(Q=r4(Q.year,Q.month,Q.day+U),G=G.add24HourDays(-U));let Z=y0("day",z),H=z5(Y,$.isoDate,Q,Z);return z!==Z&&(G=G.add24HourDays(H.days),H.days=0),m0(H,G)}function yJ($,X,Y,z,G){let U=B.subtract(X,$);if(B.equal(U,w1))return{date:{years:0,months:0,weeks:0,days:0},time:C$.ZERO};let W=B.lessThan(U,w1)?-1:1,Q=T1(Y,$),Z=T1(Y,X),H,O=0,w=W===1?2:1,V=VV(Q.time,Z.time);for(V.sign()===-W&&O++;O<=w;O++){H=k$(r4(Z.isoDate.year,Z.isoDate.month,Z.isoDate.day-O*W),Q.time);let N=H4(Y,H,"compatible");if(V=C$.fromEpochNsDiff(X,N),V.sign()!==-W)break}let D=y0("day",G);return m0(z5(z,Q.isoDate,H.isoDate,D),V)}function mJ($,X,Y,z,G,U,W,Q,Z){let H,O,w,V,D=X;switch(Q){case"year":{let l=q8(D.date.years,W,"trunc");H=l,O=l+W*$,w={years:H,months:0,weeks:0,days:0},V={...w,years:O};break}case"month":{let l=q8(D.date.months,W,"trunc");H=l,O=l+W*$,w=Z4(D.date,0,0,H),V=Z4(D.date,0,0,O);break}case"week":{let l=Z4(D.date,0,0),U$=D1(U,z.isoDate,l,"constrain"),K$=z5(U,U$,r4(U$.year,U$.month,U$.day+D.date.days),"week"),b$=q8(D.date.weeks+K$.weeks,W,"trunc");H=b$,O=b$+W*$,w=Z4(D.date,0,H),V=Z4(D.date,0,O);break}case"day":{let l=q8(D.date.days,W,"trunc");H=l,O=l+W*$,w=Z4(D.date,H),V=Z4(D.date,O);break}}let N=D1(U,z.isoDate,w,"constrain"),F=D1(U,z.isoDate,V,"constrain"),L,K,q=k$(N,z.time),R=k$(F,z.time);G?(L=H4(G,q,"compatible"),K=H4(G,R,"compatible")):(L=$4(q),K=$4(R));let _=C$.fromEpochNsDiff(Y,L),v=C$.fromEpochNsDiff(K,L),x=O3(Z,$<0?"negative":"positive"),S=_.add(_).abs().subtract(v.abs()).sign(),m=Math.abs(H)/W%2==0,$$=_.isZero()?Math.abs(H):_.cmp(v)?w3(Math.abs(H),Math.abs(O),S,m,x):Math.abs(O),I=new C$(B.add(B.multiply(v.totalNs,B.BigInt(H)),B.multiply(_.totalNs,B.BigInt(W*$)))).fdiv(v.totalNs),Y$=$$===Math.abs(O);return D={date:Y$?V:w,time:C$.ZERO},{nudgeResult:{duration:D,nudgedEpochNs:Y$?K:L,didExpandCalendarUnit:Y$},total:I}}function A3($,X,Y,z,G,U,W,Q,Z){let H=$,O=U0(Q)||z&&Q==="day",w=bJ(H)<0?-1:1,V;return O?{nudgeResult:V}=mJ(w,H,X,Y,z,G,W,Q,Z):V=z?function(D,N,F,L,K,q,R,_){let v=N,x=D1(K,F.isoDate,v.date,"constrain"),S=k$(x,F.time),m=k$(r4(x.year,x.month,x.day+D),F.time),$$=H4(L,S,"compatible"),I=H4(L,m,"compatible"),Y$=C$.fromEpochNsDiff(I,$$);if(Y$.sign()!==D)throw new RangeError("time zone returned inconsistent Instants");let l=B.BigInt(tY[R]*q),U$=v.time.round(l,_),K$=U$.subtract(Y$),b$=K$.sign()!==-D,K6,Y4;return b$?(K6=D,U$=K$.round(l,_),Y4=U$.addToEpochNs(I)):(K6=0,Y4=U$.addToEpochNs($$)),{duration:m0(Z4(v.date,v.date.days+K6),U$),nudgedEpochNs:Y4,didExpandCalendarUnit:b$}}(w,H,Y,z,G,W,Q,Z):function(D,N,F,L,K,q){let R=D,_=R.time.add24HourDays(R.date.days),v=_.round(B.BigInt(L*tY[K]),q),x=v.subtract(_),{quotient:S}=_.divmod(ez),{quotient:m}=v.divmod(ez),$$=Math.sign(m-S)===_.sign(),I=x.addToEpochNs(N),Y$=0,l=v;return f0(F)==="date"&&(Y$=m,l=v.add(C$.fromComponents(24*-m,0,0,0,0,0))),{duration:{date:Z4(R.date,Y$),time:l},nudgedEpochNs:I,didExpandCalendarUnit:$$}}(H,X,U,W,Q,Z),H=V.duration,V.didExpandCalendarUnit&&Q!=="week"&&(H=function(D,N,F,L,K,q,R,_){let v=N;if(_===R)return v;let x=h9.indexOf(R);for(let S=h9.indexOf(_)-1;S>=x;S--){let m=h9[S];if(m==="week"&&R!=="week")continue;let $$;switch(m){case"year":$$={years:v.date.years+D,months:0,weeks:0,days:0};break;case"month":{let l=v.date.months+D;$$=Z4(v.date,0,0,l);break}case"week":{let l=v.date.weeks+D;$$=Z4(v.date,0,l);break}}let I=k$(D1(q,L.isoDate,$$,"constrain"),L.time),Y$;if(Y$=K?H4(K,I,"compatible"):$4(I),az(F,Y$)===-D)break;v={date:$$,time:C$.ZERO}}return v}(w,H,V.nudgedEpochNs,Y,z,G,U,y0(Q,"day"))),H}function bL($,X,Y,z,G,U){return U0(U)||z&&U==="day"?mJ(bJ($)<0?-1:1,$,X,Y,z,G,1,U,"trunc").total:m9($.time.add24HourDays($.date.days),U)}function uJ($,X,Y,z,G,U,W){if(sY($,X)==0)return{date:{years:0,months:0,weeks:0,days:0},time:C$.ZERO};PX($),PX(X);let Q=gJ($,X,Y,z);return U==="nanosecond"&&G===1?Q:A3(Q,$4(X),$,null,Y,z,G,U,W)}function cJ($,X,Y,z,G,U,W,Q){if(f0(G)==="time")return DV($,X,U,W,Q);let Z=yJ($,X,Y,z,G);return W==="nanosecond"&&U===1?Z:A3(Z,X,T1(Y,$),Y,z,G,U,W,Q)}function W2($,X,Y,z,G,U){let W=oY.reduce((D,N)=>{let F=N[0],L=N[1],K=N[2];return Y!=="datetime"&&K!==Y||z.includes(L)||D.push(L,F),D},[]),Q=i4(X,"largestUnit",Y,"auto");if(z.includes(Q))throw new RangeError(`largestUnit must be one of ${W.join(", ")}, not ${Q}`);let Z=G2(X),H=u1(X,"trunc");$==="since"&&(H=function(D){switch(D){case"ceil":return"floor";case"floor":return"ceil";case"halfCeil":return"halfFloor";case"halfFloor":return"halfCeil";default:return D}}(H));let O=i4(X,"smallestUnit",Y,G);if(z.includes(O))throw new RangeError(`smallestUnit must be one of ${W.join(", ")}, not ${O}`);let w=y0(U,O);if(Q==="auto"&&(Q=w),y0(Q,O)!==Q)throw new RangeError(`largestUnit ${Q} cannot be smaller than smallestUnit ${O}`);let V={hour:24,minute:60,second:60,millisecond:1000,microsecond:1000,nanosecond:1000}[O];return V!==void 0&&z2(Z,V,!1),{largestUnit:Q,roundingIncrement:Z,roundingMode:H,smallestUnit:O}}function fL($,X,Y,z){let G=I9(Y),U=W2($,W$(z),"time",[],"nanosecond","second"),W=_1(DV(E(X,N$),E(G,N$),U.roundingIncrement,U.smallestUnit,U.roundingMode),U.largestUnit);return $==="since"&&(W=n4(W)),W}function hL($,X,Y,z){let G=j9(Y),U=E(X,p),W=E(G,p);if(!H0(U,W))throw new RangeError(`cannot compute difference between dates of ${U} and ${W} calendars`);let Q=W2($,W$(z),"date",[],"day","day"),Z=X4("%Temporal.Duration%"),H=E(X,E$),O=E(G,E$);if(w0(H,O)===0)return new Z;let w={date:z5(U,H,O,Q.largestUnit),time:C$.ZERO};if(Q.smallestUnit!=="day"||Q.roundingIncrement!==1){let D=k$(H,{deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0});w=A3(w,$4(k$(O,{deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0})),D,null,U,Q.largestUnit,Q.roundingIncrement,Q.smallestUnit,Q.roundingMode)}let V=_1(w,"day");return $==="since"&&(V=n4(V)),V}function gL($,X,Y,z){let G=B9(Y),U=E(X,p),W=E(G,p);if(!H0(U,W))throw new RangeError(`cannot compute difference between dates of ${U} and ${W} calendars`);let Q=W2($,W$(z),"datetime",[],"nanosecond","day"),Z=X4("%Temporal.Duration%"),H=E(X,W6),O=E(G,W6);if(sY(H,O)===0)return new Z;let w=_1(uJ(H,O,U,Q.largestUnit,Q.roundingIncrement,Q.smallestUnit,Q.roundingMode),Q.largestUnit);return $==="since"&&(w=n4(w)),w}function yL($,X,Y,z){let G=_8(Y),U=W2($,W$(z),"time",[],"nanosecond","hour"),W=VV(E(X,N6),E(G,N6));W=W3(W,U.roundingIncrement,U.smallestUnit,U.roundingMode);let Q=_1(m0({years:0,months:0,weeks:0,days:0},W),U.largestUnit);return $==="since"&&(Q=n4(Q)),Q}function mL($,X,Y,z){let G=x9(Y),U=E(X,p),W=E(G,p);if(!H0(U,W))throw new RangeError(`cannot compute difference between months of ${U} and ${W} calendars`);let Q=W2($,W$(z),"date",["week","day"],"month","year"),Z=X4("%Temporal.Duration%");if(w0(E(X,E$),E(G,E$))==0)return new Z;let H=I4(U,E(X,E$),"year-month");H.day=1;let O=v8(U,H,"constrain"),w=I4(U,E(G,E$),"year-month");w.day=1;let V=v8(U,w,"constrain"),D={date:Z4(z5(U,O,V,Q.largestUnit),0,0),time:C$.ZERO};if(Q.smallestUnit!=="month"||Q.roundingIncrement!==1){let F=k$(O,{deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0});D=A3(D,$4(k$(V,{deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0})),F,null,U,Q.largestUnit,Q.roundingIncrement,Q.smallestUnit,Q.roundingMode)}let N=_1(D,"day");return $==="since"&&(N=n4(N)),N}function uL($,X,Y,z){let G=S9(Y),U=E(X,p),W=E(G,p);if(!H0(U,W))throw new RangeError(`cannot compute difference between dates of ${U} and ${W} calendars`);let Q=W2($,W$(z),"datetime",[],"nanosecond","hour"),Z=E(X,N$),H=E(G,N$),O=X4("%Temporal.Duration%"),w;if(f0(Q.largestUnit)!=="date")w=_1(DV(Z,H,Q.roundingIncrement,Q.smallestUnit,Q.roundingMode),Q.largestUnit);else{let V=E(X,m$);if(!jJ(V,E(G,m$)))throw new RangeError("When calculating difference between time zones, largestUnit must be 'hours' or smaller because day lengths can vary between time zones due to DST or time zone offset changes.");if(B.equal(Z,H))return new O;w=_1(cJ(Z,H,V,U,Q.largestUnit,Q.roundingIncrement,Q.smallestUnit,Q.roundingMode),"hour")}return $==="since"&&(w=n4(w)),w}function aY({hour:$,minute:X,second:Y,millisecond:z,microsecond:G,nanosecond:U},W){let Q=Y,Z=U;return Q+=W.sec,Z+=W.subsec,K8($,X,Q,z,G,Z)}function sw($,X){let Y=X.addToEpochNs($);return O0(Y),Y}function k9($,X,Y,z,G="constrain"){if(M3(z.date)===0)return sw($,z.time);let U=T1(X,$);return sw(H4(X,k$(D1(Y,U.isoDate,z.date,G),U.time),"compatible"),z.time)}function cL($,X,Y){let z=q1(Y);$==="subtract"&&(z=n4(z));let G=y0(b0(X),b0(z));if(U0(G))throw new RangeError("For years, months, or weeks arithmetic, use date arithmetic relative to a starting point");let U=Q0(X),W=Q0(z);return _1(m0({years:0,months:0,weeks:0,days:0},U.time.add(W.time)),G)}function pL($,X,Y){let z=q1(Y);$==="subtract"&&(z=n4(z));let G=b0(z);if(f0(G)==="date")throw new RangeError(`Duration field ${G} not supported by Temporal.Instant. Try Temporal.ZonedDateTime instead.`);let U=Q0(z);return y1(sw(E(X,N$),U.time))}function dL($,X,Y,z){let G=E(X,p),U=q1(Y);$==="subtract"&&(U=n4(U));let W=hJ(U),Q=x$(W$(z));return j4(D1(G,E(X,E$),W,Q),G)}function lL($,X,Y,z){let G=q1(Y);$==="subtract"&&(G=n4(G));let U=x$(W$(z)),W=E(X,p),Q=Q0(G),Z=E(X,W6),H=aY(Z.time,Q.time),O=Z4(Q.date,H.deltaDays);return J3(O.years,O.months,O.weeks,O.days,0,0,0,0,0,0),K1(k$(D1(W,Z.isoDate,O,U),H),W)}function iL($,X,Y){let z=q1(Y);$==="subtract"&&(z=n4(z));let G=Q0(z),{hour:U,minute:W,second:Q,millisecond:Z,microsecond:H,nanosecond:O}=aY(E(X,N6),G.time);return h0(E3(U,W,Q,Z,H,O,"reject"))}function rL($,X,Y,z){let G=q1(Y);$==="subtract"&&(G=n4(G));let U=x$(W$(z)),W=U3(G),Q=E(X,p),Z=I4(Q,E(X,E$),"year-month");Z.day=1;let H=v8(Q,Z,"constrain");if(W<0){let w=D1(Q,H,{months:1},"constrain");H=r4(w.year,w.month,w.day-1)}let O=hJ(G);return IX(H),lY(d9(Q,I4(Q,D1(Q,H,O,U),"year-month"),U),Q)}function nL($,X,Y,z){let G=q1(Y);$==="subtract"&&(G=n4(G));let U=x$(W$(z)),W=E(X,m$),Q=E(X,p),Z=cY(G);return Q4(k9(E(X,N$),W,Q,Z,U),W,Q)}function q8($,X,Y){let z=Math.trunc($/X),G=$%X,U=$<0?"negative":"positive",W=Math.abs(z),Q=W+1,Z=l4(Math.abs(2*G)-X),H=W%2==0,O=O3(Y,U),w=G===0?W:w3(W,Q,Z,H,O);return X*(U==="positive"?w:-w)}function ew($,X,Y,z){let G=tY[Y]*X;return function(U,W,Q){let Z=k0(U),H=k0(W),O=B.divide(Z,H),w=B.remainder(Z,H),V=O3(Q,"positive"),D,N;B.lessThan(Z,w1)?(D=B.subtract(O,u9),N=O):(D=O,N=B.add(O,u9));let F=az(AX(B.multiply(w,zV)),H)*(B.lessThan(Z,w1)?-1:1)+0,L=B.equal(w,w1)?O:w3(D,N,F,sL(D),V);return B.multiply(L,H)}($,B.BigInt(G),z)}function $V($,X,Y,z){aw($);let{year:G,month:U,day:W}=$.isoDate,Q=XV($.time,X,Y,z);return k$(r4(G,U,W+Q.deltaDays),Q)}function XV({hour:$,minute:X,second:Y,millisecond:z,microsecond:G,nanosecond:U},W,Q,Z){let H;switch(Q){case"day":case"hour":H=1000*(1000*(1000*(60*(60*$+X)+Y)+z)+G)+U;break;case"minute":H=1000*(1000*(1000*(60*X+Y)+z)+G)+U;break;case"second":H=1000*(1000*(1000*Y+z)+G)+U;break;case"millisecond":H=1000*(1000*z+G)+U;break;case"microsecond":H=1000*G+U;break;case"nanosecond":H=U}let O=tY[Q],w=q8(H,O*W,Z)/O;switch(Q){case"day":return{deltaDays:w,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0};case"hour":return K8(w,0,0,0,0,0);case"minute":return K8($,w,0,0,0,0);case"second":return K8($,X,w,0,0,0);case"millisecond":return K8($,X,Y,w,0,0);case"microsecond":return K8($,X,Y,z,w,0);case"nanosecond":return K8($,X,Y,z,G,w);default:throw new Error(`Invalid unit ${Q}`)}}function W3($,X,Y,z){let G=tY[Y];return $.round(B.BigInt(G*X),z)}function m9($,X){let Y=tY[X];return $.fdiv(B.BigInt(Y))}function w0($,X){return $.year!==X.year?l4($.year-X.year):$.month!==X.month?l4($.month-X.month):$.day!==X.day?l4($.day-X.day):0}function YV($,X){return $.hour!==X.hour?l4($.hour-X.hour):$.minute!==X.minute?l4($.minute-X.minute):$.second!==X.second?l4($.second-X.second):$.millisecond!==X.millisecond?l4($.millisecond-X.millisecond):$.microsecond!==X.microsecond?l4($.microsecond-X.microsecond):$.nanosecond!==X.nanosecond?l4($.nanosecond-X.nanosecond):0}function sY($,X){let Y=w0($.isoDate,X.isoDate);return Y!==0?Y:YV($.time,X.time)}function pJ($){let X=Q3($);return globalThis.BigInt!==void 0?globalThis.BigInt(X.toString(10)):X}function R1($,X){let Y=k0($),{quotient:z,remainder:G}=v9(Y,t9),U=B.toNumber(z);return X==="floor"&&B.toNumber(G)<0&&(U-=1),X==="ceil"&&B.toNumber(G)>0&&(U+=1),U}function m1($){if(!Number.isInteger($))throw new RangeError("epoch milliseconds must be an integer");return B.multiply(B.BigInt($),t9)}function Q3($){let X=$;if(typeof $=="object"){let Y=$[Symbol.toPrimitive];Y&&typeof Y=="function"&&(X=Y.call($,"number"))}if(typeof X=="number")throw new TypeError("cannot convert number to bigint");return typeof X=="bigint"?B.BigInt(X.toString(10)):B.BigInt(X)}var GV=(()=>{let $=B.BigInt(Date.now()%1e6);return()=>{let X=Date.now(),Y=B.BigInt(X),z=B.add(m1(X),$);return $=B.remainder(Y,t9),B.greaterThan(z,nY)?nY:B.lessThan(z,c9)?c9:z}})();function R9(){return new Intl.DateTimeFormat().resolvedOptions().timeZone}function l4($){return $<0?-1:$>0?1:$}function W$($){if($===void 0)return Object.create(null);if(E6($)&&$!==null)return $;throw new TypeError("Options parameter must be an object, not "+($===null?"null":typeof $))}function CX($,X){let Y=Object.create(null);return Y[$]=X,Y}function u0($,X,Y,z){let G=$[X];if(G!==void 0){if(G=D3(G),!Y.includes(G))throw new RangeError(`${X} must be one of ${Y.join(", ")}, not ${G}`);return G}if(z===p0)throw new RangeError(`${X} option is required`);return z}function S4($){let X=n9($);if(!lS.includes(n9(X)))throw new RangeError(`invalid calendar identifier ${X}`);switch(X){case"ethiopic-amete-alem":return"ethioaa";case"islamicc":return"islamic-civil"}return X}function n9($){let X="";for(let Y=0;Y<$.length;Y++){let z=$.charCodeAt(Y);X+=z>=65&&z<=90?String.fromCharCode(z+32):String.fromCharCode(z)}return X}function j8($){throw new TypeError(`Do not use built-in arithmetic operators with Temporal objects. When comparing, use ${$==="PlainMonthDay"?"Temporal.PlainDate.compare(obj1.toPlainDate(year), obj2.toPlainDate(year))":`Temporal.${$}.compare(obj1, obj2)`}, not obj1 > obj2. When coercing to strings, use \`\${obj}\` or String(obj), not '' + obj. When coercing to numbers, use properties or methods of the object, not \`+obj\`. When concatenating with strings, use \`\${str}\${obj}\` or str.concat(obj), not str + obj. In React, coerce to a string before rendering a Temporal object.`)}var sS=new RegExp(`^${VJ.source}$`),eS=new RegExp(`^${/([+-])([01][0-9]|2[0-3])(?::?([0-5][0-9])(?::?([0-5][0-9])(?:[.,](\d{1,9}))?)?)?/.source}$`);function dJ($,X,Y,z=$(X),G=$(Y)){let U=X,W=Y,Q=z,Z=G;for(;W-U>1;){let H=Math.trunc((U+W)/2),O=$(H);O===Q?(U=H,Q=O):O===Z&&(W=H,Z=O)}return W}function lJ($){return[...$]}function iJ($,X){if($!=="gregory"&&$!=="iso8601")return;let Y=Z5[$],z=X.year,{dayOfWeek:G,dayOfYear:U,daysInYear:W}=Y.isoToDate(X,{dayOfWeek:!0,dayOfYear:!0,daysInYear:!0}),Q=Y.getFirstDayOfWeek(),Z=Y.getMinimalDaysInFirstWeek(),H=(G+7-Q)%7,O=(G-U+7001-Q)%7,w=Math.floor((U-1+O)/7);if(7-O>=Z&&++w,w==0)w=function(V,D,N,F){let L=(F-V-N+1)%7;L<0&&(L+=7);let K=Math.floor((N+L-1)/7);return 7-L>=D&&++K,K}(Q,Z,U+Y.isoToDate(Y.dateAdd(X,{years:-1},"constrain"),{daysInYear:!0}).daysInYear,G),z--;else if(U>=W-5){let V=(H+W-U)%7;V<0&&(V+=7),6-V>=Z&&U+7-H>W&&(w=1,z++)}return{week:w,year:z}}function oL($,X,Y,z,G){if(X!==G.year){if($*(X-G.year)>0)return!0}else if(Y!==G.month){if($*(Y-G.month)>0)return!0}else if(z!==G.day&&$*(z-G.day)>0)return!0;return!1}var Z5={};function jX($){if(!$.startsWith("M"))throw new RangeError(`Invalid month code: ${$}. Month codes must start with M.`);let X=+$.slice(1);if(Number.isNaN(X))throw new RangeError(`Invalid month code: ${$}`);return X}function Z0($,X=!1){return`M${`${$}`.padStart(2,"0")}${X?"L":""}`}function NV($,X=void 0,Y=12){let{month:z,monthCode:G}=$;if(G===void 0){if(z===void 0)throw new TypeError("Either month or monthCode are required");X==="reject"&&i6(z,1,Y),X==="constrain"&&(z=C4(z,1,Y)),G=Z0(z)}else{let U=jX(G);if(G!==Z0(U))throw new RangeError(`Invalid month code: ${G}`);if(z!==void 0&&z!==U)throw new RangeError(`monthCode ${G} and month ${z} must match if both are present`);if(z=U,z<1||z>Y)throw new RangeError(`Invalid monthCode: ${G}`)}return{...$,month:z,monthCode:G}}Z5.iso8601={resolveFields($,X){if((X==="date"||X==="year-month")&&$.year===void 0)throw new TypeError("year is required");if((X==="date"||X==="month-day")&&$.day===void 0)throw new TypeError("day is required");Object.assign($,NV($))},dateToISO:($,X)=>g9($.year,$.month,$.day,X),monthDayToISOReferenceDate($,X){let{month:Y,day:z}=g9($.year??1972,$.month,$.day,X);return{month:Y,day:z,year:1972}},extraFields:()=>[],fieldKeysToIgnore($){let X=new Set;for(let Y=0;Y<$.length;Y++){let z=$[Y];X.add(z),z==="month"?X.add("monthCode"):z==="monthCode"&&X.add("month")}return lJ(X)},dateAdd($,{years:X=0,months:Y=0,weeks:z=0,days:G=0},U){let{year:W,month:Q,day:Z}=$;return W+=X,Q+=Y,{year:W,month:Q}=KX(W,Q),{year:W,month:Q,day:Z}=g9(W,Q,Z,U),Z+=G+7*z,r4(W,Q,Z)},dateUntil($,X,Y){let z=-w0($,X);if(z===0)return{years:0,months:0,weeks:0,days:0};let G,U=0,W=0;if(Y==="year"||Y==="month"){let O=X.year-$.year;for(O!==0&&(O-=z);!oL(z,$.year+O,$.month,$.day,X);)U=O,O+=z;let w=z;for(G=KX($.year+U,$.month+w);!oL(z,G.year,G.month,$.day,X);)W=w,w+=z,G=KX(G.year,G.month+z);Y==="month"&&(W+=12*U,U=0)}G=KX($.year+U,$.month+W);let Q=fJ(G.year,G.month,$.day),Z=0,H=vX(X.year,X.month-1,X.day)-vX(Q.year,Q.month-1,Q.day);return Y==="week"&&(Z=Math.trunc(H/7),H%=7),{years:U,months:W,weeks:Z,days:H}},isoToDate({year:$,month:X,day:Y},z){let G={era:void 0,eraYear:void 0,year:$,month:X,day:Y,daysInWeek:7,monthsInYear:12};if(z.monthCode&&(G.monthCode=Z0(X)),z.dayOfWeek){let U=X+(X<3?10:-2),W=$-(X<3?1:0),Q=Math.floor(W/100),Z=W-100*Q,H=(Y+Math.floor(2.6*U-0.2)+(Z+Math.floor(Z/4))+(Math.floor(Q/4)-2*Q))%7;G.dayOfWeek=H+(H<=0?7:0)}if(z.dayOfYear){let U=Y;for(let W=X-1;W>0;W--)U+=qX($,W);G.dayOfYear=U}return z.weekOfYear&&(G.weekOfYear=iJ("iso8601",{year:$,month:X,day:Y})),z.daysInMonth&&(G.daysInMonth=qX($,X)),(z.daysInYear||z.inLeapYear)&&(G.inLeapYear=z3($),G.daysInYear=G.inLeapYear?366:365),G},getFirstDayOfWeek:()=>1,getMinimalDaysInFirstWeek:()=>4};class l6{constructor($){if(this.map=new Map,this.calls=0,this.hits=0,this.misses=0,$!==void 0){let X=0;for(let Y of $.map.entries()){if(++X>l6.MAX_CACHE_ENTRIES)break;this.map.set(...Y)}}}get($){let X=this.map.get($);return X&&(this.hits++,this.report()),this.calls++,X}set($,X){this.map.set($,X),this.misses++,this.report()}report(){}setObject($){if(l6.objectMap.get($))throw new RangeError("object already cached");l6.objectMap.set($,this),this.report()}static getCacheForObject($){let X=l6.objectMap.get($);return X||(X=new l6,l6.objectMap.set($,X)),X}}function rJ({isoYear:$,isoMonth:X,isoDay:Y}){return`${Q5($)}-${N1(X)}-${N1(Y)}T00:00Z`}function fw($,X){return{years:$.year-X.year,months:$.month-X.month,days:$.day-X.day}}l6.objectMap=new WeakMap,l6.MAX_CACHE_ENTRIES=1000;class B8{constructor(){this.eras=[],this.hasEra=!1,this.erasBeginMidYear=!1}getFormatter(){return this.formatter===void 0&&(this.formatter=new Intl.DateTimeFormat(`en-US-u-ca-${this.id}`,{day:"numeric",month:"numeric",year:"numeric",era:"short",timeZone:"UTC"})),this.formatter}getCalendarParts($){let X=this.getFormatter(),Y=new Date($);if($==="-271821-04-19T00:00Z"){let z=X.resolvedOptions();X=new Intl.DateTimeFormat(z.locale,{...z,timeZone:"Etc/GMT+1"}),Y=new Date("-271821-04-20T00:00Z")}try{return X.formatToParts(Y)}catch(z){throw new RangeError(`Invalid ISO date: ${$}`)}}isoToCalendarDate($,X){let{year:Y,month:z,day:G}=$,U=JSON.stringify({func:"isoToCalendarDate",isoYear:Y,isoMonth:z,isoDay:G,id:this.id}),W=X.get(U);if(W)return W;let Q=rJ({isoYear:Y,isoMonth:z,isoDay:G}),Z=this.getCalendarParts(Q),H={};for(let w=0;w<Z.length;w++){let{type:V,value:D}=Z[w];if(V!=="year"&&V!=="relatedYear"||(this.hasEra?H.eraYear=+D:H.year=+D),V==="month"){let N=/^([0-9]*)(.*?)$/.exec(D);if(!N||N.length!=3||!N[1]&&!N[2])throw new RangeError(`Unexpected month: ${D}`);if(H.month=N[1]?+N[1]:1,H.month<1)throw new RangeError(`Invalid month ${D} from ${Q}[u-ca-${this.id}] (probably due to https://bugs.chromium.org/p/v8/issues/detail?id=10527)`);if(H.month>13)throw new RangeError(`Invalid month ${D} from ${Q}[u-ca-${this.id}] (probably due to https://bugs.chromium.org/p/v8/issues/detail?id=10529)`);N[2]&&(H.monthExtra=N[2])}V==="day"&&(H.day=+D),this.hasEra&&V==="era"&&D!=null&&D!==""&&(H.era=D.split(" (")[0].normalize("NFD").replace(/[^-0-9 \p{L}]/gu,"").replace(/ /g,"-").toLowerCase())}if(this.hasEra&&H.eraYear===void 0)throw new RangeError(`Intl.DateTimeFormat.formatToParts lacks relatedYear in ${this.id} calendar. Try Node 14+ or modern browsers.`);if(this.hasEra){let w=this.eras.find((V)=>H.era===V.genericName);w&&(H.era=w.code)}if(this.reviseIntlEra){let{era:w,eraYear:V}=this.reviseIntlEra(H,$);H.era=w,H.eraYear=V}this.checkIcuBugs&&this.checkIcuBugs($);let O=this.adjustCalendarDate(H,X,"constrain",!0);if(O.year===void 0)throw new RangeError(`Missing year converting ${JSON.stringify($)}`);if(O.month===void 0)throw new RangeError(`Missing month converting ${JSON.stringify($)}`);if(O.day===void 0)throw new RangeError(`Missing day converting ${JSON.stringify($)}`);return X.set(U,O),["constrain","reject"].forEach((w)=>{let V=JSON.stringify({func:"calendarToIsoDate",year:O.year,month:O.month,day:O.day,overflow:w,id:this.id});X.set(V,$)}),O}validateCalendarDate($){let{month:X,year:Y,day:z,eraYear:G,monthCode:U,monthExtra:W}=$;if(W!==void 0)throw new RangeError("Unexpected `monthExtra` value");if(Y===void 0&&G===void 0)throw new TypeError("year or eraYear is required");if(X===void 0&&U===void 0)throw new TypeError("month or monthCode is required");if(z===void 0)throw new RangeError("Missing day");if(U!==void 0){if(typeof U!="string")throw new RangeError("monthCode must be a string, not "+typeof U);if(!/^M([01]?\d)(L?)$/.test(U))throw new RangeError(`Invalid monthCode: ${U}`)}if(this.hasEra&&$.era===void 0!=($.eraYear===void 0))throw new TypeError("properties era and eraYear must be provided together")}adjustCalendarDate($,X=void 0,Y="constrain",z=!1){if(this.calendarType==="lunisolar")throw new RangeError("Override required for lunisolar calendars");let G=$;this.validateCalendarDate(G);let U=this.monthsInYear(G,X),{month:W,monthCode:Q}=G;return{month:W,monthCode:Q}=NV(G,Y,U),{...G,month:W,monthCode:Q}}regulateMonthDayNaive($,X,Y){let z=this.monthsInYear($,Y),{month:G,day:U}=$;return X==="reject"?(i6(G,1,z),i6(U,1,this.maximumMonthLength($))):(G=C4(G,1,z),U=C4(U,1,this.maximumMonthLength({...$,month:G}))),{...$,month:G,day:U}}calendarToIsoDate($,X="constrain",Y){let z=$,G=this.adjustCalendarDate($,Y,X,!1);G=this.regulateMonthDayNaive(G,X,Y);let{year:U,month:W,day:Q}=G,Z=JSON.stringify({func:"calendarToIsoDate",year:U,month:W,day:Q,overflow:X,id:this.id}),H,O=Y.get(Z);if(O)return O;if(z.year!==void 0&&z.month!==void 0&&z.day!==void 0&&(z.year!==G.year||z.month!==G.month||z.day!==G.day)&&(H=JSON.stringify({func:"calendarToIsoDate",year:z.year,month:z.month,day:z.day,overflow:X,id:this.id}),O=Y.get(H),O))return O;let w=this.estimateIsoDate({year:U,month:W,day:Q}),V=(K)=>{let q=this.addDaysIso(w,K);if(G.day>this.minimumMonthLength(G)){let R=this.isoToCalendarDate(q,Y);for(;R.month!==W||R.year!==U;){if(X==="reject")throw new RangeError(`day ${Q} does not exist in month ${W} of year ${U}`);q=this.addDaysIso(q,-1),R=this.isoToCalendarDate(q,Y)}}return q},D=0,N=this.isoToCalendarDate(w,Y),F=fw(G,N);if(F.years!==0||F.months!==0||F.days!==0){let K=365*F.years+30*F.months+F.days;w=this.addDaysIso(w,K),N=this.isoToCalendarDate(w,Y),F=fw(G,N),F.years===0&&F.months===0?w=V(F.days):D=this.compareCalendarDates(G,N)}let L=8;for(;D;){w=this.addDaysIso(w,D*L);let K=N;N=this.isoToCalendarDate(w,Y);let q=D;if(D=this.compareCalendarDates(G,N),D){if(F=fw(G,N),F.years===0&&F.months===0)w=V(F.days),D=0;else if(q&&D!==q)if(L>1)L/=2;else{if(X==="reject")throw new RangeError(`Can't find ISO date from calendar date: ${JSON.stringify({...z})}`);this.compareCalendarDates(N,K)>0&&(w=this.addDaysIso(w,-1)),D=0}}}if(Y.set(Z,w),H&&Y.set(H,w),G.year===void 0||G.month===void 0||G.day===void 0||G.monthCode===void 0||this.hasEra&&(G.era===void 0||G.eraYear===void 0))throw new RangeError("Unexpected missing property");return w}compareCalendarDates($,X){return $.year!==X.year?l4($.year-X.year):$.month!==X.month?l4($.month-X.month):$.day!==X.day?l4($.day-X.day):0}regulateDate($,X="constrain",Y){let z=this.calendarToIsoDate($,X,Y);return this.isoToCalendarDate(z,Y)}addDaysIso($,X){return r4($.year,$.month,$.day+X)}addDaysCalendar($,X,Y){let z=this.calendarToIsoDate($,"constrain",Y),G=this.addDaysIso(z,X);return this.isoToCalendarDate(G,Y)}addMonthsCalendar($,X,Y,z){let G=$,{day:U}=G;for(let W=0,Q=Math.abs(X);W<Q;W++){let{month:Z}=G,H=G,O=X<0?-Math.max(U,this.daysInPreviousMonth(G,z)):this.daysInMonth(G,z),w=this.calendarToIsoDate(G,"constrain",z),V=this.addDaysIso(w,O);if(G=this.isoToCalendarDate(V,z),X>0){let D=this.monthsInYear(H,z);for(;G.month-1!=Z%D;)V=this.addDaysIso(V,-1),G=this.isoToCalendarDate(V,z)}G.day!==U&&(G=this.regulateDate({...G,day:U},"constrain",z))}if(Y==="reject"&&G.day!==U)throw new RangeError(`Day ${U} does not exist in resulting calendar month`);return G}addCalendar($,{years:X=0,months:Y=0,weeks:z=0,days:G=0},U,W){let{year:Q,day:Z,monthCode:H}=$,O=this.adjustCalendarDate({year:Q+X,monthCode:H,day:Z},W),w=this.addMonthsCalendar(O,Y,U,W),V=G+7*z;return this.addDaysCalendar(w,V,W)}untilCalendar($,X,Y,z){let G=0,U=0,W=0,Q=0;switch(Y){case"day":G=this.calendarDaysUntil($,X,z);break;case"week":{let Z=this.calendarDaysUntil($,X,z);G=Z%7,U=(Z-G)/7;break}case"month":case"year":{let Z=this.compareCalendarDates(X,$);if(!Z)return{years:0,months:0,weeks:0,days:0};let H=X.year-$.year,O=X.day-$.day;if(Y==="year"&&H){let D=0;X.monthCode>$.monthCode&&(D=1),X.monthCode<$.monthCode&&(D=-1),D||(D=Math.sign(O)),Q=D*Z<0?H-Z:H}let w,V=Q?this.addCalendar($,{years:Q},"constrain",z):$;do W+=Z,w=V,V=this.addMonthsCalendar(w,Z,"constrain",z),V.day!==$.day&&(V=this.regulateDate({...V,day:$.day},"constrain",z));while(this.compareCalendarDates(X,V)*Z>=0);W-=Z,G=this.calendarDaysUntil(w,X,z);break}}return{years:Q,months:W,weeks:U,days:G}}daysInMonth($,X){let{day:Y}=$,z=this.maximumMonthLength($),G=this.minimumMonthLength($);if(G===z)return G;let U=Y<=z-G?z:G,W=this.calendarToIsoDate($,"constrain",X),Q=this.addDaysIso(W,U),Z=this.isoToCalendarDate(Q,X),H=this.addDaysIso(Q,-Z.day);return this.isoToCalendarDate(H,X).day}daysInPreviousMonth($,X){let{day:Y,month:z,year:G}=$,U={year:z>1?G:G-1,month:z,day:1},W=z>1?z-1:this.monthsInYear(U,X);U={...U,month:W};let Q=this.minimumMonthLength(U),Z=this.maximumMonthLength(U);if(Q===Z)return Z;let H=this.calendarToIsoDate($,"constrain",X),O=this.addDaysIso(H,-Y);return this.isoToCalendarDate(O,X).day}startOfCalendarYear($){return{year:$.year,month:1,monthCode:"M01",day:1}}startOfCalendarMonth($){return{year:$.year,month:$.month,day:1}}calendarDaysUntil($,X,Y){let z=this.calendarToIsoDate($,"constrain",Y),G=this.calendarToIsoDate(X,"constrain",Y);return vX(G.year,G.month-1,G.day)-vX(z.year,z.month-1,z.day)}monthDaySearchStartYear($,X){return 1972}monthDayFromFields($,X,Y){let z,G,U,W,Q,{era:Z,eraYear:H,year:O,month:w,monthCode:V,day:D}=$;if(w!==void 0&&O===void 0&&(!this.hasEra||Z===void 0||H===void 0))throw new TypeError("when month is present, year (or era and eraYear) are required");(V===void 0||O!==void 0||this.hasEra&&H!==void 0)&&({monthCode:V,day:D}=this.isoToCalendarDate(this.calendarToIsoDate($,X,Y),Y));let N={year:this.monthDaySearchStartYear(V,D),month:12,day:31},F=this.isoToCalendarDate(N,Y),L=F.monthCode>V||F.monthCode===V&&F.day>=D?F.year:F.year-1;for(let K=0;K<20;K++){let q=this.adjustCalendarDate({day:D,monthCode:V,year:L-K},Y),R=this.calendarToIsoDate(q,"constrain",Y),_=this.isoToCalendarDate(R,Y);if({year:z,month:G,day:U}=R,_.monthCode===V&&_.day===D)return{month:G,day:U,year:z};if(X==="constrain"){let v=this.maxLengthOfMonthCodeInAnyYear(_.monthCode);if(_.monthCode===V&&_.day===v&&D>v)return{month:G,day:U,year:z};(W===void 0||_.monthCode===W.monthCode&&_.day>W.day)&&(W=_,Q=R)}}if(X==="constrain"&&Q!==void 0)return Q;throw new RangeError(`No recent ${this.id} year with monthCode ${V} and day ${D}`)}getFirstDayOfWeek(){}getMinimalDaysInFirstWeek(){}}class nJ extends B8{constructor(){super(...arguments),this.id="hebrew",this.calendarType="lunisolar",this.months={Tishri:{leap:1,regular:1,monthCode:"M01",days:30},Heshvan:{leap:2,regular:2,monthCode:"M02",days:{min:29,max:30}},Kislev:{leap:3,regular:3,monthCode:"M03",days:{min:29,max:30}},Tevet:{leap:4,regular:4,monthCode:"M04",days:29},Shevat:{leap:5,regular:5,monthCode:"M05",days:30},Adar:{leap:void 0,regular:6,monthCode:"M06",days:29},"Adar I":{leap:6,regular:void 0,monthCode:"M05L",days:30},"Adar II":{leap:7,regular:void 0,monthCode:"M06",days:29},Nisan:{leap:8,regular:7,monthCode:"M07",days:30},Iyar:{leap:9,regular:8,monthCode:"M08",days:29},Sivan:{leap:10,regular:9,monthCode:"M09",days:30},Tamuz:{leap:11,regular:10,monthCode:"M10",days:29},Av:{leap:12,regular:11,monthCode:"M11",days:30},Elul:{leap:13,regular:12,monthCode:"M12",days:29}}}inLeapYear($){let{year:X}=$;return(7*X+1)%19<7}monthsInYear($){return this.inLeapYear($)?13:12}minimumMonthLength($){return this.minMaxMonthLength($,"min")}maximumMonthLength($){return this.minMaxMonthLength($,"max")}minMaxMonthLength($,X){let{month:Y,year:z}=$,G=this.getMonthCode(z,Y),U=Object.entries(this.months).find((Q)=>Q[1].monthCode===G);if(U===void 0)throw new RangeError(`unmatched Hebrew month: ${Y}`);let W=U[1].days;return typeof W=="number"?W:W[X]}maxLengthOfMonthCodeInAnyYear($){return["M04","M06","M08","M10","M12"].includes($)?29:30}estimateIsoDate($){let{year:X}=$;return{year:X-3760,month:1,day:1}}getMonthCode($,X){return this.inLeapYear({year:$})?X===6?Z0(5,!0):Z0(X<6?X:X-1):Z0(X)}adjustCalendarDate($,X,Y="constrain",z=!1){let{year:G,month:U,monthCode:W,day:Q,monthExtra:Z}=$;if(G===void 0)throw new TypeError("Missing property: year");if(z){if(Z){let H=this.months[Z];if(!H)throw new RangeError(`Unrecognized month from formatToParts: ${Z}`);U=this.inLeapYear({year:G})?H.leap:H.regular}return W=this.getMonthCode(G,U),{year:G,month:U,day:Q,monthCode:W}}if(this.validateCalendarDate($),U===void 0)if(W.endsWith("L")){if(W!=="M05L")throw new RangeError(`Hebrew leap month must have monthCode M05L, not ${W}`);if(U=6,!this.inLeapYear({year:G})){if(Y==="reject")throw new RangeError(`Hebrew monthCode M05L is invalid in year ${G} which is not a leap year`);U=6,W="M06"}}else{U=jX(W),this.inLeapYear({year:G})&&U>=6&&U++;let H=this.monthsInYear({year:G});if(U<1||U>H)throw new RangeError(`Invalid monthCode: ${W}`)}else if(Y==="reject"?(i6(U,1,this.monthsInYear({year:G})),i6(Q,1,this.maximumMonthLength({year:G,month:U}))):(U=C4(U,1,this.monthsInYear({year:G})),Q=C4(Q,1,this.maximumMonthLength({year:G,month:U}))),W===void 0)W=this.getMonthCode(G,U);else if(this.getMonthCode(G,U)!==W)throw new RangeError(`monthCode ${W} doesn't correspond to month ${U} in Hebrew year ${G}`);return{...$,day:Q,month:U,monthCode:W,year:G}}}class xX extends B8{constructor(){super(...arguments),this.calendarType="lunar",this.DAYS_PER_ISLAMIC_YEAR=354.3666666666667,this.DAYS_PER_ISO_YEAR=365.2425}inLeapYear($,X){let Y={year:$.year,month:1,monthCode:"M01",day:1},z={year:$.year+1,month:1,monthCode:"M01",day:1};return this.calendarDaysUntil(Y,z,X)===355}monthsInYear(){return 12}minimumMonthLength(){return 29}maximumMonthLength(){return 30}maxLengthOfMonthCodeInAnyYear(){return 30}estimateIsoDate($){let{year:X}=this.adjustCalendarDate($);return{year:Math.floor(X*this.DAYS_PER_ISLAMIC_YEAR/this.DAYS_PER_ISO_YEAR)+622,month:1,day:1}}}class oJ extends xX{constructor(){super(...arguments),this.id="islamic"}}class tJ extends xX{constructor(){super(...arguments),this.id="islamic-umalqura"}}class aJ extends xX{constructor(){super(...arguments),this.id="islamic-tbla"}}class sJ extends xX{constructor(){super(...arguments),this.id="islamic-civil"}}class eJ extends xX{constructor(){super(...arguments),this.id="islamic-rgsa"}}class $A extends xX{constructor(){super(...arguments),this.id="islamicc"}}class XA extends B8{constructor(){super(...arguments),this.id="persian",this.calendarType="solar"}inLeapYear($,X){return this.daysInMonth({year:$.year,month:12,day:1},X)===30}monthsInYear(){return 12}minimumMonthLength($){let{month:X}=$;return X===12?29:X<=6?31:30}maximumMonthLength($){let{month:X}=$;return X===12?30:X<=6?31:30}maxLengthOfMonthCodeInAnyYear($){return jX($)<=6?31:30}estimateIsoDate($){let{year:X}=this.adjustCalendarDate($);return{year:X+621,month:1,day:1}}}class YA extends B8{constructor(){super(...arguments),this.id="indian",this.calendarType="solar",this.months={1:{length:30,month:3,day:22,leap:{length:31,month:3,day:21}},2:{length:31,month:4,day:21},3:{length:31,month:5,day:22},4:{length:31,month:6,day:22},5:{length:31,month:7,day:23},6:{length:31,month:8,day:23},7:{length:30,month:9,day:23},8:{length:30,month:10,day:23},9:{length:30,month:11,day:22},10:{length:30,month:12,day:22},11:{length:30,month:1,nextYear:!0,day:21},12:{length:30,month:2,nextYear:!0,day:20}},this.vulnerableToBceBug=new Date("0000-01-01T00:00Z").toLocaleDateString("en-US-u-ca-indian",{timeZone:"UTC"})!=="10/11/-79 Saka"}inLeapYear($){return EV($.year+78)}monthsInYear(){return 12}minimumMonthLength($){return this.getMonthInfo($).length}maximumMonthLength($){return this.getMonthInfo($).length}maxLengthOfMonthCodeInAnyYear($){let X=jX($),Y=this.months[X];return Y=Y.leap??Y,Y.length}getMonthInfo($){let{month:X}=$,Y=this.months[X];if(Y===void 0)throw new RangeError(`Invalid month: ${X}`);return this.inLeapYear($)&&Y.leap&&(Y=Y.leap),Y}estimateIsoDate($){let X=this.adjustCalendarDate($),Y=this.getMonthInfo(X);return r4(X.year+78+(Y.nextYear?1:0),Y.month,Y.day+X.day-1)}checkIcuBugs($){if(this.vulnerableToBceBug&&$.year<1)throw new RangeError(`calendar '${this.id}' is broken for ISO dates before 0001-01-01 (see https://bugs.chromium.org/p/v8/issues/detail?id=10529)`)}}function EV($){return $%4==0&&($%100!=0||$%400==0)}class FV extends B8{constructor($,X){super(),this.calendarType="solar",this.id=$,this.isoEpoch=X}inLeapYear($){let{year:X}=this.estimateIsoDate({month:1,day:1,year:$.year});return EV(X)}monthsInYear(){return 12}minimumMonthLength($){let{month:X}=$;return X===2?this.inLeapYear($)?29:28:[4,6,9,11].indexOf(X)>=0?30:31}maximumMonthLength($){return this.minimumMonthLength($)}maxLengthOfMonthCodeInAnyYear($){return[31,29,31,30,31,30,31,31,30,31,30,31][jX($)-1]}estimateIsoDate($){let X=this.adjustCalendarDate($);return g9(X.year+this.isoEpoch.year,X.month+this.isoEpoch.month,X.day+this.isoEpoch.day,"constrain")}}class MV extends B8{constructor($,X){super(),this.hasEra=!0,this.calendarType="solar",this.id=$;let{eras:Y,anchorEra:z}=function(G){let U,W=G;if(W.length===0)throw new RangeError("Invalid era data: eras are required");if(W.length===1&&W[0].reverseOf)throw new RangeError("Invalid era data: anchor era cannot count years backwards");if(W.length===1&&!W[0].code)throw new RangeError("Invalid era data: at least one named era is required");if(W.filter((Z)=>Z.reverseOf!=null).length>1)throw new RangeError("Invalid era data: only one era can count years backwards");W.forEach((Z)=>{if(Z.isAnchor||!Z.anchorEpoch&&!Z.reverseOf){if(U)throw new RangeError("Invalid era data: cannot have multiple anchor eras");U=Z,Z.anchorEpoch={year:Z.hasYearZero?0:1}}else if(!Z.code)throw new RangeError("If era name is blank, it must be the anchor era")}),W=W.filter((Z)=>Z.code),W.forEach((Z)=>{let{reverseOf:H}=Z;if(H){let O=W.find((w)=>w.code===H);if(O===void 0)throw new RangeError(`Invalid era data: unmatched reverseOf era: ${H}`);Z.reverseOf=O,Z.anchorEpoch=O.anchorEpoch,Z.isoEpoch=O.isoEpoch}Z.anchorEpoch.month===void 0&&(Z.anchorEpoch.month=1),Z.anchorEpoch.day===void 0&&(Z.anchorEpoch.day=1)}),W.sort((Z,H)=>{if(Z.reverseOf)return 1;if(H.reverseOf)return-1;if(!Z.isoEpoch||!H.isoEpoch)throw new RangeError("Invalid era data: missing ISO epoch");return H.isoEpoch.year-Z.isoEpoch.year});let Q=W[W.length-1].reverseOf;if(Q&&Q!==W[W.length-2])throw new RangeError("Invalid era data: invalid reverse-sign era");return W.forEach((Z,H)=>{Z.genericName="era"+(W.length-1-H)}),{eras:W,anchorEra:U||W[0]}}(X);this.anchorEra=z,this.eras=Y}inLeapYear($){let{year:X}=this.estimateIsoDate({month:1,day:1,year:$.year});return EV(X)}monthsInYear(){return 12}minimumMonthLength($){let{month:X}=$;return X===2?this.inLeapYear($)?29:28:[4,6,9,11].indexOf(X)>=0?30:31}maximumMonthLength($){return this.minimumMonthLength($)}maxLengthOfMonthCodeInAnyYear($){return[31,29,31,30,31,30,31,31,30,31,30,31][jX($)-1]}completeEraYear($){let X=(W,Q,Z)=>{let H=$[W];if(H!=null&&H!=Q&&!(Z||[]).includes(H)){let O=Z?.[0];throw new RangeError(`Input ${W} ${H} doesn't match calculated value ${O?`${Q} (also called ${O})`:Q}`)}},Y=(W)=>{let Q,Z={...$,year:W},H=this.eras.find((O,w)=>{if(w===this.eras.length-1){if(O.reverseOf){if(W>0)throw new RangeError(`Signed year ${W} is invalid for era ${O.code}`);return Q=O.anchorEpoch.year-W,!0}return Q=W-O.anchorEpoch.year+(O.hasYearZero?0:1),!0}return this.compareCalendarDates(Z,O.anchorEpoch)>=0&&(Q=W-O.anchorEpoch.year+(O.hasYearZero?0:1),!0)});if(!H)throw new RangeError(`Year ${W} was not matched by any era`);return{eraYear:Q,era:H.code,eraNames:H.names}},{year:z,eraYear:G,era:U}=$;if(z!=null){let W=Y(z);({eraYear:G,era:U}=W),X("era",U,W?.eraNames),X("eraYear",G)}else{if(G==null)throw new RangeError("Either year or eraYear and era are required");{if(U===void 0)throw new RangeError("era and eraYear must be provided together");let W=this.eras.find(({code:Q,names:Z=[]})=>Q===U||Z.includes(U));if(!W)throw new RangeError(`Era ${U} (ISO year ${G}) was not matched by any era`);z=W.reverseOf?W.anchorEpoch.year-G:G+W.anchorEpoch.year-(W.hasYearZero?0:1),X("year",z),{eraYear:G,era:U}=Y(z)}}return{...$,year:z,eraYear:G,era:U}}adjustCalendarDate($,X,Y="constrain"){let z=$,{month:G,monthCode:U}=z;return G===void 0&&(z={...z,month:jX(U)}),this.validateCalendarDate(z),z=this.completeEraYear(z),super.adjustCalendarDate(z,X,Y)}estimateIsoDate($){let X=this.adjustCalendarDate($),{year:Y,month:z,day:G}=X,{anchorEra:U}=this;return g9(Y+U.isoEpoch.year-(U.hasYearZero?0:1),z,G,"constrain")}}class K3 extends MV{constructor($,X){super($,X)}isoToCalendarDate($){let{year:X,month:Y,day:z}=$,G=Z0(Y),U=X-this.anchorEra.isoEpoch.year+1;return this.completeEraYear({year:U,month:Y,monthCode:G,day:z})}}var W0={inLeapYear($){let{year:X}=$;return(X+1)%4==0},monthsInYear:()=>13,minimumMonthLength($){let{month:X}=$;return X===13?this.inLeapYear($)?6:5:30},maximumMonthLength($){return this.minimumMonthLength($)},maxLengthOfMonthCodeInAnyYear:($)=>$==="M13"?6:30};class GA extends FV{constructor($,X){super($,X),this.inLeapYear=W0.inLeapYear,this.monthsInYear=W0.monthsInYear,this.minimumMonthLength=W0.minimumMonthLength,this.maximumMonthLength=W0.maximumMonthLength,this.maxLengthOfMonthCodeInAnyYear=W0.maxLengthOfMonthCodeInAnyYear}}class LV extends MV{constructor($,X){super($,X),this.inLeapYear=W0.inLeapYear,this.monthsInYear=W0.monthsInYear,this.minimumMonthLength=W0.minimumMonthLength,this.maximumMonthLength=W0.maximumMonthLength,this.maxLengthOfMonthCodeInAnyYear=W0.maxLengthOfMonthCodeInAnyYear}}class zA extends GA{constructor(){super("ethioaa",{year:-5492,month:7,day:17})}}class UA extends LV{constructor(){super("coptic",[{code:"coptic",isoEpoch:{year:284,month:8,day:29}},{code:"coptic-inverse",reverseOf:"coptic"}])}}class WA extends LV{constructor(){super("ethiopic",[{code:"ethioaa",names:["ethiopic-amete-alem","mundi"],isoEpoch:{year:-5492,month:7,day:17}},{code:"ethiopic",names:["incar"],isoEpoch:{year:8,month:8,day:27},anchorEpoch:{year:5501}}])}}class QA extends K3{constructor(){super("roc",[{code:"roc",names:["minguo"],isoEpoch:{year:1912,month:1,day:1}},{code:"roc-inverse",names:["before-roc"],reverseOf:"roc"}])}}class ZA extends FV{constructor(){super("buddhist",{year:-543,month:1,day:1})}}class HA extends K3{constructor(){super("gregory",[{code:"gregory",names:["ad","ce"],isoEpoch:{year:1,month:1,day:1}},{code:"gregory-inverse",names:["be","bce"],reverseOf:"gregory"}])}reviseIntlEra($){let{era:X,eraYear:Y}=$;return X==="b"&&(X="gregory-inverse"),X==="a"&&(X="gregory"),{era:X,eraYear:Y}}getFirstDayOfWeek(){return 1}getMinimalDaysInFirstWeek(){return 1}}class OA extends K3{constructor(){super("japanese",[{code:"reiwa",isoEpoch:{year:2019,month:5,day:1},anchorEpoch:{year:2019,month:5,day:1}},{code:"heisei",isoEpoch:{year:1989,month:1,day:8},anchorEpoch:{year:1989,month:1,day:8}},{code:"showa",isoEpoch:{year:1926,month:12,day:25},anchorEpoch:{year:1926,month:12,day:25}},{code:"taisho",isoEpoch:{year:1912,month:7,day:30},anchorEpoch:{year:1912,month:7,day:30}},{code:"meiji",isoEpoch:{year:1868,month:9,day:8},anchorEpoch:{year:1868,month:9,day:8}},{code:"japanese",names:["japanese","gregory","ad","ce"],isoEpoch:{year:1,month:1,day:1}},{code:"japanese-inverse",names:["japanese-inverse","gregory-inverse","bc","bce"],reverseOf:"japanese"}]),this.erasBeginMidYear=!0}reviseIntlEra($,X){let{era:Y,eraYear:z}=$,{year:G}=X;return this.eras.find((U)=>U.code===Y)?{era:Y,eraYear:z}:G<1?{era:"japanese-inverse",eraYear:1-G}:{era:"japanese",eraYear:G}}}class JV extends B8{constructor(){super(...arguments),this.calendarType="lunisolar"}inLeapYear($,X){let Y=this.getMonthList($.year,X);return Object.entries(Y).length===13}monthsInYear($,X){return this.inLeapYear($,X)?13:12}minimumMonthLength(){return 29}maximumMonthLength(){return 30}maxLengthOfMonthCodeInAnyYear($){return["M01L","M09L","M10L","M11L","M12L"].includes($)?29:30}monthDaySearchStartYear($,X){let Y={M01L:[1651,1651],M02L:[1947,1765],M03L:[1966,1955],M04L:[1963,1944],M05L:[1971,1952],M06L:[1960,1941],M07L:[1968,1938],M08L:[1957,1718],M09L:[1832,1832],M10L:[1870,1870],M11L:[1814,1814],M12L:[1890,1890]}[$]??[1972,1972];return X<30?Y[0]:Y[1]}getMonthList($,X){if($===void 0)throw new TypeError("Missing year");let Y=JSON.stringify({func:"getMonthList",calendarYear:$,id:this.id}),z=X.get(Y);if(z)return z;let G=this.getFormatter(),U=(F,L)=>{let K=rJ({isoYear:F,isoMonth:2,isoDay:1}),q=new Date(K);q.setUTCDate(L+1);let R=G.formatToParts(q),_=R.find((m)=>m.type==="month").value,v=+R.find((m)=>m.type==="day").value,x=R.find((m)=>m.type==="relatedYear"),S;if(x===void 0)throw new RangeError(`Intl.DateTimeFormat.formatToParts lacks relatedYear in ${this.id} calendar. Try Node 14+ or modern browsers.`);return S=+x.value,{calendarMonthString:_,calendarDay:v,calendarYearToVerify:S}},W=17,{calendarMonthString:Q,calendarDay:Z,calendarYearToVerify:H}=U($,W);Q!=="1"&&(W+=29,{calendarMonthString:Q,calendarDay:Z}=U($,W)),W-=Z-5;let O={},w,V,D=1,N=!1;do({calendarMonthString:Q,calendarDay:Z,calendarYearToVerify:H}=U($,W)),w&&(O[V].daysInMonth=w+30-Z),H!==$?N=!0:(O[Q]={monthIndex:D++},W+=30),w=Z,V=Q;while(!N);return O[V].daysInMonth=w+30-Z,X.set(Y,O),O}estimateIsoDate($){let{year:X,month:Y}=$;return{year:X,month:Y>=12?12:Y+1,day:1}}adjustCalendarDate($,X,Y="constrain",z=!1){let{year:G,month:U,monthExtra:W,day:Q,monthCode:Z}=$;if(G===void 0)throw new TypeError("Missing property: year");if(z){if(W&&W!=="bis")throw new RangeError(`Unexpected leap month suffix: ${W}`);let H=Z0(U,W!==void 0),O=`${U}${W||""}`,w=this.getMonthList(G,X)[O];if(w===void 0)throw new RangeError(`Unmatched month ${O} in Chinese year ${G}`);return U=w.monthIndex,{year:G,month:U,day:Q,monthCode:H}}if(this.validateCalendarDate($),U===void 0){let H=this.getMonthList(G,X),O=Z.replace(/^M|L$/g,(V)=>V==="L"?"bis":"");O[0]==="0"&&(O=O.slice(1));let w=H[O];if(U=w&&w.monthIndex,U===void 0&&Z.endsWith("L")&&Z!="M13L"&&Y==="constrain"){let V=+Z.replace(/^M0?|L$/g,"");w=H[V],w&&(U=w.monthIndex,Z=Z0(V))}if(U===void 0)throw new RangeError(`Unmatched month ${Z} in Chinese year ${G}`)}else if(Z===void 0){let H=this.getMonthList(G,X),O=Object.entries(H),w=O.length;Y==="reject"?(i6(U,1,w),i6(Q,1,this.maximumMonthLength())):(U=C4(U,1,w),Q=C4(Q,1,this.maximumMonthLength()));let V=O.find((D)=>D[1].monthIndex===U);if(V===void 0)throw new RangeError(`Invalid month ${U} in Chinese year ${G}`);Z=Z0(+V[0].replace("bis",""),V[0].indexOf("bis")!==-1)}else{let H=this.getMonthList(G,X),O=Z.replace(/^M|L$/g,(V)=>V==="L"?"bis":"");O[0]==="0"&&(O=O.slice(1));let w=H[O];if(!w)throw new RangeError(`Unmatched monthCode ${Z} in Chinese year ${G}`);if(U!==w.monthIndex)throw new RangeError(`monthCode ${Z} doesn't correspond to month ${U} in Chinese year ${G}`)}return{...$,year:G,month:U,monthCode:Z,day:Q}}}class wA extends JV{constructor(){super(...arguments),this.id="chinese"}}class VA extends JV{constructor(){super(...arguments),this.id="dangi"}}class DA{constructor($){this.helper=$}extraFields($){return this.helper.hasEra&&$.includes("year")?["era","eraYear"]:[]}resolveFields($){if(this.helper.calendarType!=="lunisolar"){let X=new l6;NV($,void 0,this.helper.monthsInYear({year:$.year??1972},X))}}dateToISO($,X){let Y=new l6,z=this.helper.calendarToIsoDate($,X,Y);return Y.setObject(z),z}monthDayToISOReferenceDate($,X){let Y=new l6,z=this.helper.monthDayFromFields($,X,Y);return Y.setObject(z),z}fieldKeysToIgnore($){let X=new Set;for(let Y=0;Y<$.length;Y++){let z=$[Y];switch(X.add(z),z){case"era":X.add("eraYear"),X.add("year");break;case"eraYear":X.add("era"),X.add("year");break;case"year":X.add("era"),X.add("eraYear");break;case"month":X.add("monthCode"),this.helper.erasBeginMidYear&&(X.add("era"),X.add("eraYear"));break;case"monthCode":X.add("month"),this.helper.erasBeginMidYear&&(X.add("era"),X.add("eraYear"));break;case"day":this.helper.erasBeginMidYear&&(X.add("era"),X.add("eraYear"))}}return lJ(X)}dateAdd($,{years:X,months:Y,weeks:z,days:G},U){let W=l6.getCacheForObject($),Q=this.helper.isoToCalendarDate($,W),Z=this.helper.addCalendar(Q,{years:X,months:Y,weeks:z,days:G},U,W),H=this.helper.calendarToIsoDate(Z,"constrain",W);return l6.getCacheForObject(H)||new l6(W).setObject(H),H}dateUntil($,X,Y){let z=l6.getCacheForObject($),G=l6.getCacheForObject(X),U=this.helper.isoToCalendarDate($,z),W=this.helper.isoToCalendarDate(X,G);return this.helper.untilCalendar(U,W,Y,z)}isoToDate($,X){let Y=l6.getCacheForObject($),z=this.helper.isoToCalendarDate($,Y);if(X.dayOfWeek&&(z.dayOfWeek=Z5.iso8601.isoToDate($,{dayOfWeek:!0}).dayOfWeek),X.dayOfYear){let G=this.helper.startOfCalendarYear(z),U=this.helper.calendarDaysUntil(G,z,Y);z.dayOfYear=U+1}if(X.weekOfYear&&(z.weekOfYear=iJ(this.helper.id,$)),z.daysInWeek=7,X.daysInMonth&&(z.daysInMonth=this.helper.daysInMonth(z,Y)),X.daysInYear){let G=this.helper.startOfCalendarYear(z),U=this.helper.addCalendar(G,{years:1},"constrain",Y);z.daysInYear=this.helper.calendarDaysUntil(G,U,Y)}return X.monthsInYear&&(z.monthsInYear=this.helper.monthsInYear(z,Y)),X.inLeapYear&&(z.inLeapYear=this.helper.inLeapYear(z,Y)),z}getFirstDayOfWeek(){return this.helper.getFirstDayOfWeek()}getMinimalDaysInFirstWeek(){return this.helper.getMinimalDaysInFirstWeek()}}for(let $ of[nJ,XA,WA,zA,UA,wA,VA,QA,YA,ZA,HA,OA,oJ,tJ,aJ,sJ,eJ,$A]){let X=new $;Z5[X.id]=new DA(X)}pw("calendarImpl",function($){return Z5[$]});var o9=Intl.DateTimeFormat;function gY($,X){let Y=E($,X);return typeof Y=="function"&&(Y=new o9(E($,ZJ),Y(E($,yw))),function(z,G,U){let W=H3(z);if(W===void 0)throw new TypeError("Missing slots for the given container");if(W[G]===void 0)throw new TypeError(`tried to reset ${G} which was not set`);W[G]=U}($,X,Y)),Y}function P9($){return x4($,BX)}class eY{constructor($=void 0,X=void 0){(function(Y,z,G){let U=G!==void 0,W;if(U){let O=["localeMatcher","calendar","numberingSystem","hour12","hourCycle","timeZone","weekday","era","year","month","day","dayPeriod","hour","minute","second","fractionalSecondDigits","timeZoneName","formatMatcher","dateStyle","timeStyle"];W=function(V){if(V==null)throw new TypeError(`Expected object not ${V}`);return Object(V)}(G);let w=Object.create(null);for(let V=0;V<O.length;V++){let D=O[V];Object.prototype.hasOwnProperty.call(W,D)&&(w[D]=W[D])}W=w}else W=Object.create(null);let Q=new o9(z,W),Z=Q.resolvedOptions();if(d0(Y),U){let O=Object.assign(Object.create(null),Z);for(let w in O)Object.prototype.hasOwnProperty.call(W,w)||delete O[w];O.hour12=W.hour12,O.hourCycle=W.hourCycle,R$(Y,yw,O)}else R$(Y,yw,W);R$(Y,ZJ,Z.locale),R$(Y,BX,Q),R$(Y,uY,Z.timeZone),R$(Y,C9,Z.calendar),R$(Y,YJ,Zk),R$(Y,GJ,Wk),R$(Y,zJ,Qk),R$(Y,UJ,Uk),R$(Y,WJ,Hk),R$(Y,QJ,Ok);let H=U?W.timeZone:void 0;if(H===void 0)R$(Y,gw,Z.timeZone);else{let O=D3(H);if(O.startsWith("\u2212"))throw new RangeError("Unicode minus (U+2212) is not supported in time zone offsets");R$(Y,gw,B4(O))}})(this,$,X)}get format(){k(this,P9);let $=Xk.bind(this);return Object.defineProperties($,{length:{value:1,enumerable:!1,writable:!1,configurable:!0},name:{value:"",enumerable:!1,writable:!1,configurable:!0}}),$}formatRange($,X){return k(this,P9),Gk.call(this,$,X)}formatToParts($,...X){return k(this,P9),Yk.call(this,$,...X)}formatRangeToParts($,X){return k(this,P9),zk.call(this,$,X)}resolvedOptions(){return k(this,P9),$k.call(this)}}"formatToParts"in o9.prototype||delete eY.prototype.formatToParts,"formatRangeToParts"in o9.prototype||delete eY.prototype.formatRangeToParts;var V1=function($=void 0,X=void 0){return new eY($,X)};function $k(){let $=E(this,BX).resolvedOptions();return $.timeZone=E(this,gw),$}function Xk($,...X){let Y,z,G=$2($,this);return G.formatter?(Y=G.formatter,z=[R1(G.epochNs,"floor")]):(Y=E(this,BX),z=[$,...X]),Y.format(...z)}function Yk($,...X){let Y,z,G=$2($,this);return G.formatter?(Y=G.formatter,z=[R1(G.epochNs,"floor")]):(Y=E(this,BX),z=[$,...X]),Y.formatToParts(...z)}function Gk($,X){if($===void 0||X===void 0)throw new TypeError("Intl.DateTimeFormat.formatRange requires two values");let Y=Z3($),z=Z3(X),G,U=[Y,z];if(c0(Y)!==c0(z))throw new TypeError("Intl.DateTimeFormat.formatRange accepts two values of the same type");if(c0(Y)){if(!NA(Y,z))throw new TypeError("Intl.DateTimeFormat.formatRange accepts two values of the same type");let{epochNs:W,formatter:Q}=$2(Y,this),{epochNs:Z,formatter:H}=$2(z,this);Q&&(G=Q,U=[R1(W,"floor"),R1(Z,"floor")])}return G||(G=E(this,BX)),G.formatRange(...U)}function zk($,X){if($===void 0||X===void 0)throw new TypeError("Intl.DateTimeFormat.formatRange requires two values");let Y=Z3($),z=Z3(X),G,U=[Y,z];if(c0(Y)!==c0(z))throw new TypeError("Intl.DateTimeFormat.formatRangeToParts accepts two values of the same type");if(c0(Y)){if(!NA(Y,z))throw new TypeError("Intl.DateTimeFormat.formatRangeToParts accepts two values of the same type");let{epochNs:W,formatter:Q}=$2(Y,this),{epochNs:Z,formatter:H}=$2(z,this);Q&&(G=Q,U=[R1(W,"floor"),R1(Z,"floor")])}return G||(G=E(this,BX)),G.formatRangeToParts(...U)}function H5($={},X={}){let Y=Object.assign({},$),z=["year","month","day","hour","minute","second","weekday","dayPeriod","timeZoneName","dateStyle","timeStyle"];for(let G=0;G<z.length;G++){let U=z[G];Y[U]=U in X?X[U]:Y[U],Y[U]!==!1&&Y[U]!==void 0||delete Y[U]}return Y}function Uk($){let X=H5($,{year:!1,month:!1,day:!1,weekday:!1,timeZoneName:!1,dateStyle:!1});if(X.timeStyle!=="long"&&X.timeStyle!=="full"||(delete X.timeStyle,Object.assign(X,{hour:"numeric",minute:"2-digit",second:"2-digit"})),!q3(X)){if(O5($))throw new TypeError(`cannot format Temporal.PlainTime with options [${Object.keys($)}]`);Object.assign(X,{hour:"numeric",minute:"numeric",second:"numeric"})}return X}function Wk($){let X={short:{year:"2-digit",month:"numeric"},medium:{year:"numeric",month:"short"},long:{year:"numeric",month:"long"},full:{year:"numeric",month:"long"}},Y=H5($,{day:!1,hour:!1,minute:!1,second:!1,weekday:!1,dayPeriod:!1,timeZoneName:!1,timeStyle:!1});if("dateStyle"in Y&&Y.dateStyle){let z=Y.dateStyle;delete Y.dateStyle,Object.assign(Y,X[z])}if(!(("year"in Y)||("month"in Y)||("era"in Y))){if(O5($))throw new TypeError(`cannot format PlainYearMonth with options [${Object.keys($)}]`);Object.assign(Y,{year:"numeric",month:"numeric"})}return Y}function Qk($){let X={short:{month:"numeric",day:"numeric"},medium:{month:"short",day:"numeric"},long:{month:"long",day:"numeric"},full:{month:"long",day:"numeric"}},Y=H5($,{year:!1,hour:!1,minute:!1,second:!1,weekday:!1,dayPeriod:!1,timeZoneName:!1,timeStyle:!1});if("dateStyle"in Y&&Y.dateStyle){let z=Y.dateStyle;delete Y.dateStyle,Object.assign(Y,X[z])}if(!("month"in Y)&&!("day"in Y)){if(O5($))throw new TypeError(`cannot format PlainMonthDay with options [${Object.keys($)}]`);Object.assign(Y,{month:"numeric",day:"numeric"})}return Y}function Zk($){let X=H5($,{hour:!1,minute:!1,second:!1,dayPeriod:!1,timeZoneName:!1,timeStyle:!1});if(!_3(X)){if(O5($))throw new TypeError(`cannot format PlainDate with options [${Object.keys($)}]`);Object.assign(X,{year:"numeric",month:"numeric",day:"numeric"})}return X}function Hk($){let X=H5($,{timeZoneName:!1});if((X.timeStyle==="long"||X.timeStyle==="full")&&(delete X.timeStyle,Object.assign(X,{hour:"numeric",minute:"2-digit",second:"2-digit"}),X.dateStyle))Object.assign(X,{short:{year:"numeric",month:"numeric",day:"numeric"},medium:{year:"numeric",month:"short",day:"numeric"},long:{year:"numeric",month:"long",day:"numeric"},full:{year:"numeric",month:"long",day:"numeric",weekday:"long"}}[X.dateStyle]),delete X.dateStyle;if(!q3(X)&&!_3(X)){if(O5($))throw new TypeError(`cannot format PlainDateTime with options [${Object.keys($)}]`);Object.assign(X,{year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"})}return X}function Ok($){let X=$;return q3(X)||_3(X)||(X=Object.assign({},X,{year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"})),X}function _3($){return"year"in $||"month"in $||"day"in $||"weekday"in $||"dateStyle"in $||"era"in $}function q3($){return"hour"in $||"minute"in $||"second"in $||"timeStyle"in $||"dayPeriod"in $||"fractionalSecondDigits"in $}function O5($){return _3($)||q3($)||"dateStyle"in $||"timeStyle"in $||"timeZoneName"in $}function c0($){return D6($)||J6($)||e$($)||v$($)||e6($)||O1($)||s6($)}function Z3($){return c0($)?$:V3($)}function NA($,X){return!(!c0($)||!c0(X)||J6($)&&!J6(X)||D6($)&&!D6(X)||e$($)&&!e$(X)||v$($)&&!v$(X)||e6($)&&!e6(X)||O1($)&&!O1(X)||s6($)&&!s6(X))}function $2($,X){if(J6($)){let Y={isoDate:{year:1970,month:1,day:1},time:E($,N6)};return{epochNs:H4(E(X,uY),Y,"compatible"),formatter:gY(X,UJ)}}if(e6($)){let Y=E($,p),z=E(X,C9);if(Y!==z)throw new RangeError(`cannot format PlainYearMonth with calendar ${Y} in locale with calendar ${z}`);let G=k$(E($,E$),{deltaDays:0,hour:12,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0});return{epochNs:H4(E(X,uY),G,"compatible"),formatter:gY(X,GJ)}}if(O1($)){let Y=E($,p),z=E(X,C9);if(Y!==z)throw new RangeError(`cannot format PlainMonthDay with calendar ${Y} in locale with calendar ${z}`);let G=k$(E($,E$),{deltaDays:0,hour:12,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0});return{epochNs:H4(E(X,uY),G,"compatible"),formatter:gY(X,zJ)}}if(D6($)){let Y=E($,p),z=E(X,C9);if(Y!=="iso8601"&&Y!==z)throw new RangeError(`cannot format PlainDate with calendar ${Y} in locale with calendar ${z}`);let G=k$(E($,E$),{deltaDays:0,hour:12,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0});return{epochNs:H4(E(X,uY),G,"compatible"),formatter:gY(X,YJ)}}if(e$($)){let Y=E($,p),z=E(X,C9);if(Y!=="iso8601"&&Y!==z)throw new RangeError(`cannot format PlainDateTime with calendar ${Y} in locale with calendar ${z}`);let G=E($,W6);return{epochNs:H4(E(X,uY),G,"compatible"),formatter:gY(X,WJ)}}if(v$($))throw new TypeError("Temporal.ZonedDateTime not supported in DateTimeFormat methods. Use toLocaleString() instead.");return s6($)?{epochNs:E($,N$),formatter:gY(X,QJ)}:{}}function EA($){let X=Object.create(null);return X.years=E($,A4),X.months=E($,K4),X.weeks=E($,p4),X.days=E($,_4),X.hours=E($,q4),X.minutes=E($,T4),X.seconds=E($,R4),X.milliseconds=E($,P4),X.microseconds=E($,v4),X.nanoseconds=E($,d4),X}eY.prototype.constructor=V1,Object.defineProperty(V1,"prototype",{value:eY.prototype,writable:!1,enumerable:!1,configurable:!1}),V1.supportedLocalesOf=o9.supportedLocalesOf,l0(V1,"Intl.DateTimeFormat");var{format:wk,formatToParts:Vk}=Intl.DurationFormat?.prototype??Object.create(null);function AV($){Intl.DurationFormat.prototype.resolvedOptions.call(this);let X=EA(q1($));return wk.call(this,X)}Intl.DurationFormat?.prototype&&(Intl.DurationFormat.prototype.format=AV,Intl.DurationFormat.prototype.formatToParts=function($){Intl.DurationFormat.prototype.resolvedOptions.call(this);let X=EA(q1($));return Vk.call(this,X)});var Mt=Object.freeze({__proto__:null,DateTimeFormat:V1,ModifiedIntlDurationFormatPrototypeFormat:AV});class T3{constructor($){if(arguments.length<1)throw new TypeError("missing argument: epochNanoseconds is required");vJ(this,Q3($))}get epochMilliseconds(){return k(this,s6),R1(E(this,N$),"floor")}get epochNanoseconds(){return k(this,s6),pJ(B.BigInt(E(this,N$)))}add($){return k(this,s6),pL("add",this,$)}subtract($){return k(this,s6),pL("subtract",this,$)}until($,X=void 0){return k(this,s6),fL("until",this,$,X)}since($,X=void 0){return k(this,s6),fL("since",this,$,X)}round($){if(k(this,s6),$===void 0)throw new TypeError("options parameter is required");let X=typeof $=="string"?CX("smallestUnit",$):W$($),Y=G2(X),z=u1(X,"halfExpand"),G=i4(X,"smallestUnit","time",p0);return z2(Y,{hour:24,minute:1440,second:86400,millisecond:86400000,microsecond:86400000000,nanosecond:86400000000000}[G],!0),y1(ew(E(this,N$),Y,G,z))}equals($){k(this,s6);let X=I9($),Y=E(this,N$),z=E(X,N$);return B.equal(B.BigInt(Y),B.BigInt(z))}toString($=void 0){k(this,s6);let X=W$($),Y=$5(X),z=u1(X,"trunc"),G=i4(X,"smallestUnit","time",void 0);if(G==="hour")throw new RangeError('smallestUnit must be a time unit other than "hour"');let U=X.timeZone;U!==void 0&&(U=B4(U));let{precision:W,unit:Q,increment:Z}=X5(G,Y);return vL(y1(ew(E(this,N$),Z,Q,z)),U,W)}toJSON(){return k(this,s6),vL(this,void 0,"auto")}toLocaleString($=void 0,X=void 0){return k(this,s6),new V1($,X).format(this)}valueOf(){j8("Instant")}toZonedDateTimeISO($){k(this,s6);let X=B4($);return Q4(E(this,N$),X,"iso8601")}static fromEpochMilliseconds($){return y1(m1(V3($)))}static fromEpochNanoseconds($){return y1(Q3($))}static from($){return I9($)}static compare($,X){let Y=I9($),z=I9(X),G=E(Y,N$),U=E(z,N$);return B.lessThan(G,U)?-1:B.greaterThan(G,U)?1:0}}l0(T3,"Temporal.Instant");class R3{constructor($,X,Y,z="iso8601"){let G=M$($),U=M$(X),W=M$(Y),Q=S4(z===void 0?"iso8601":g6(z));RX(G,U,W),_J(this,{year:G,month:U,day:W},Q)}get calendarId(){return k(this,D6),E(this,p)}get era(){return M4(this,"era")}get eraYear(){return M4(this,"eraYear")}get year(){return M4(this,"year")}get month(){return M4(this,"month")}get monthCode(){return M4(this,"monthCode")}get day(){return M4(this,"day")}get dayOfWeek(){return M4(this,"dayOfWeek")}get dayOfYear(){return M4(this,"dayOfYear")}get weekOfYear(){return M4(this,"weekOfYear")?.week}get yearOfWeek(){return M4(this,"weekOfYear")?.year}get daysInWeek(){return M4(this,"daysInWeek")}get daysInMonth(){return M4(this,"daysInMonth")}get daysInYear(){return M4(this,"daysInYear")}get monthsInYear(){return M4(this,"monthsInYear")}get inLeapYear(){return M4(this,"inLeapYear")}with($,X=void 0){if(k(this,D6),!E6($))throw new TypeError("invalid argument");Y2($);let Y=E(this,p),z=I4(Y,E(this,E$));return z=TX(Y,z,E1(Y,$,["year","month","monthCode","day"],[],"partial")),j4(v8(Y,z,x$(W$(X))),Y)}withCalendar($){k(this,D6);let X=U5($);return j4(E(this,E$),X)}add($,X=void 0){return k(this,D6),dL("add",this,$,X)}subtract($,X=void 0){return k(this,D6),dL("subtract",this,$,X)}until($,X=void 0){return k(this,D6),hL("until",this,$,X)}since($,X=void 0){return k(this,D6),hL("since",this,$,X)}equals($){k(this,D6);let X=j9($);return w0(E(this,E$),E(X,E$))===0&&H0(E(this,p),E(X,p))}toString($=void 0){return k(this,D6),CL(this,e9(W$($)))}toJSON(){return k(this,D6),CL(this)}toLocaleString($=void 0,X=void 0){return k(this,D6),new V1($,X).format(this)}valueOf(){j8("PlainDate")}toPlainDateTime($=void 0){k(this,D6);let X=KJ($);return K1(k$(E(this,E$),X),E(this,p))}toZonedDateTime($){let X,Y;if(k(this,D6),E6($)){let U=$.timeZone;U===void 0?X=B4($):(X=B4(U),Y=$.plainTime)}else X=B4($);let z=E(this,E$),G;return Y===void 0?G=A8(X,z):(Y=_8(Y),G=H4(X,k$(z,E(Y,N6)),"compatible")),Q4(G,X,E(this,p))}toPlainYearMonth(){k(this,D6);let $=E(this,p);return lY(d9($,I4($,E(this,E$)),"constrain"),$)}toPlainMonthDay(){k(this,D6);let $=E(this,p);return dY(Y3($,I4($,E(this,E$)),"constrain"),$)}static from($,X=void 0){return j9($,X)}static compare($,X){let Y=j9($),z=j9(X);return w0(E(Y,E$),E(z,E$))}}function M4($,X){k($,D6);let Y=E($,E$);return Y5($).isoToDate(Y,{[X]:!0})[X]}l0(R3,"Temporal.PlainDate");class P3{constructor($,X,Y,z=0,G=0,U=0,W=0,Q=0,Z=0,H="iso8601"){let O=M$($),w=M$(X),V=M$(Y),D=z===void 0?0:M$(z),N=G===void 0?0:M$(G),F=U===void 0?0:M$(U),L=W===void 0?0:M$(W),K=Q===void 0?0:M$(Q),q=Z===void 0?0:M$(Z),R=S4(H===void 0?"iso8601":g6(H));OV(O,w,V,D,N,F,L,K,q),qJ(this,{isoDate:{year:O,month:w,day:V},time:{hour:D,minute:N,second:F,millisecond:L,microsecond:K,nanosecond:q}},R)}get calendarId(){return k(this,e$),E(this,p)}get year(){return L4(this,"year")}get month(){return L4(this,"month")}get monthCode(){return L4(this,"monthCode")}get day(){return L4(this,"day")}get hour(){return yY(this,"hour")}get minute(){return yY(this,"minute")}get second(){return yY(this,"second")}get millisecond(){return yY(this,"millisecond")}get microsecond(){return yY(this,"microsecond")}get nanosecond(){return yY(this,"nanosecond")}get era(){return L4(this,"era")}get eraYear(){return L4(this,"eraYear")}get dayOfWeek(){return L4(this,"dayOfWeek")}get dayOfYear(){return L4(this,"dayOfYear")}get weekOfYear(){return L4(this,"weekOfYear")?.week}get yearOfWeek(){return L4(this,"weekOfYear")?.year}get daysInWeek(){return L4(this,"daysInWeek")}get daysInYear(){return L4(this,"daysInYear")}get daysInMonth(){return L4(this,"daysInMonth")}get monthsInYear(){return L4(this,"monthsInYear")}get inLeapYear(){return L4(this,"inLeapYear")}with($,X=void 0){if(k(this,e$),!E6($))throw new TypeError("invalid argument");Y2($);let Y=E(this,p),z=E(this,W6),G={...I4(Y,z.isoDate),...z.time};return G=TX(Y,G,E1(Y,$,["year","month","monthCode","day"],["hour","minute","second","millisecond","microsecond","nanosecond"],"partial")),K1(G5(Y,G,x$(W$(X))),Y)}withPlainTime($=void 0){k(this,e$);let X=KJ($);return K1(k$(E(this,W6).isoDate,X),E(this,p))}withCalendar($){k(this,e$);let X=U5($);return K1(E(this,W6),X)}add($,X=void 0){return k(this,e$),lL("add",this,$,X)}subtract($,X=void 0){return k(this,e$),lL("subtract",this,$,X)}until($,X=void 0){return k(this,e$),gL("until",this,$,X)}since($,X=void 0){return k(this,e$),gL("since",this,$,X)}round($){if(k(this,e$),$===void 0)throw new TypeError("options parameter is required");let X=typeof $=="string"?CX("smallestUnit",$):W$($),Y=G2(X),z=u1(X,"halfExpand"),G=i4(X,"smallestUnit","time",p0,["day"]),U={day:1,hour:24,minute:60,second:60,millisecond:1000,microsecond:1000,nanosecond:1000}[G];z2(Y,U,U===1);let W=E(this,W6);return K1(Y===1&&G==="nanosecond"?W:$V(W,Y,G,z),E(this,p))}equals($){k(this,e$);let X=B9($);return sY(E(this,W6),E(X,W6))===0&&H0(E(this,p),E(X,p))}toString($=void 0){k(this,e$);let X=W$($),Y=e9(X),z=$5(X),G=u1(X,"trunc"),U=i4(X,"smallestUnit","time",void 0);if(U==="hour")throw new RangeError('smallestUnit must be a time unit other than "hour"');let{precision:W,unit:Q,increment:Z}=X5(U,z),H=$V(E(this,W6),Z,Q,G);return PX(H),i9(H,E(this,p),W,Y)}toJSON(){return k(this,e$),i9(E(this,W6),E(this,p),"auto")}toLocaleString($=void 0,X=void 0){return k(this,e$),new V1($,X).format(this)}valueOf(){j8("PlainDateTime")}toZonedDateTime($,X=void 0){k(this,e$);let Y=B4($),z=y9(W$(X));return Q4(H4(Y,E(this,W6),z),Y,E(this,p))}toPlainDate(){return k(this,e$),j4(E(this,W6).isoDate,E(this,p))}toPlainTime(){return k(this,e$),h0(E(this,W6).time)}static from($,X=void 0){return B9($,X)}static compare($,X){let Y=B9($),z=B9(X);return sY(E(Y,W6),E(z,W6))}}function L4($,X){k($,e$);let Y=E($,W6).isoDate;return Y5($).isoToDate(Y,{[X]:!0})[X]}function yY($,X){return k($,e$),E($,W6).time[X]}l0(P3,"Temporal.PlainDateTime");class X2{constructor($=0,X=0,Y=0,z=0,G=0,U=0,W=0,Q=0,Z=0,H=0){let O=$===void 0?0:g1($),w=X===void 0?0:g1(X),V=Y===void 0?0:g1(Y),D=z===void 0?0:g1(z),N=G===void 0?0:g1(G),F=U===void 0?0:g1(U),L=W===void 0?0:g1(W),K=Q===void 0?0:g1(Q),q=Z===void 0?0:g1(Z),R=H===void 0?0:g1(H);J3(O,w,V,D,N,F,L,K,q,R),d0(this),R$(this,A4,O),R$(this,K4,w),R$(this,p4,V),R$(this,_4,D),R$(this,q4,N),R$(this,T4,F),R$(this,R4,L),R$(this,P4,K),R$(this,v4,q),R$(this,d4,R)}get years(){return k(this,V6),E(this,A4)}get months(){return k(this,V6),E(this,K4)}get weeks(){return k(this,V6),E(this,p4)}get days(){return k(this,V6),E(this,_4)}get hours(){return k(this,V6),E(this,q4)}get minutes(){return k(this,V6),E(this,T4)}get seconds(){return k(this,V6),E(this,R4)}get milliseconds(){return k(this,V6),E(this,P4)}get microseconds(){return k(this,V6),E(this,v4)}get nanoseconds(){return k(this,V6),E(this,d4)}get sign(){return k(this,V6),U3(this)}get blank(){return k(this,V6),U3(this)===0}with($){k(this,V6);let X=AJ($),{years:Y=E(this,A4),months:z=E(this,K4),weeks:G=E(this,p4),days:U=E(this,_4),hours:W=E(this,q4),minutes:Q=E(this,T4),seconds:Z=E(this,R4),milliseconds:H=E(this,P4),microseconds:O=E(this,v4),nanoseconds:w=E(this,d4)}=X;return new X2(Y,z,G,U,W,Q,Z,H,O,w)}negated(){return k(this,V6),n4(this)}abs(){return k(this,V6),new X2(Math.abs(E(this,A4)),Math.abs(E(this,K4)),Math.abs(E(this,p4)),Math.abs(E(this,_4)),Math.abs(E(this,q4)),Math.abs(E(this,T4)),Math.abs(E(this,R4)),Math.abs(E(this,P4)),Math.abs(E(this,v4)),Math.abs(E(this,d4)))}add($){return k(this,V6),cL("add",this,$)}subtract($){return k(this,V6),cL("subtract",this,$)}round($){if(k(this,V6),$===void 0)throw new TypeError("options parameter is required");let X=b0(this),Y=typeof $=="string"?CX("smallestUnit",$):W$($),z=i4(Y,"largestUnit","datetime",void 0,["auto"]),{plainRelativeTo:G,zonedRelativeTo:U}=bw(Y),W=G2(Y),Q=u1(Y,"halfExpand"),Z=i4(Y,"smallestUnit","datetime",void 0),H=!0;Z||(H=!1,Z="nanosecond");let O=y0(X,Z),w=!0;if(z||(w=!1,z=O),z==="auto"&&(z=O),!H&&!w)throw new RangeError("at least one of smallestUnit or largestUnit is required");if(y0(z,Z)!==z)throw new RangeError(`largestUnit ${z} cannot be smaller than smallestUnit ${Z}`);let V={hour:24,minute:60,second:60,millisecond:1000,microsecond:1000,nanosecond:1000}[Z];if(V!==void 0&&z2(W,V,!1),W>1&&f0(Z)==="date"&&z!==Z)throw new RangeError("For calendar units with roundingIncrement > 1, use largestUnit = smallestUnit");if(U){let N=cY(this),F=E(U,m$),L=E(U,p),K=E(U,N$);return N=cJ(K,k9(K,F,L,N),F,L,z,W,Z,Q),f0(z)==="date"&&(z="hour"),_1(N,z)}if(G){let N=Q0(this),F=aY({deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0},N.time),L=E(G,E$),K=E(G,p),q=D1(K,L,Z4(N.date,F.deltaDays),"constrain");return N=uJ(k$(L,{deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0}),k$(q,F),K,z,W,Z,Q),_1(N,z)}if(U0(X))throw new RangeError(`a starting point is required for ${X}s balancing`);if(U0(z))throw new RangeError(`a starting point is required for ${z}s balancing`);let D=Q0(this);if(Z==="day"){let{quotient:N,remainder:F}=D.time.divmod(ez),L=D.date.days+N+m9(F,"day");L=q8(L,W,Q),D=m0({years:0,months:0,weeks:0,days:L},C$.ZERO)}else D=m0({years:0,months:0,weeks:0,days:0},W3(D.time,W,Z,Q));return _1(D,z)}total($){if(k(this,V6),$===void 0)throw new TypeError("options argument is required");let X=typeof $=="string"?CX("unit",$):W$($),{plainRelativeTo:Y,zonedRelativeTo:z}=bw(X),G=i4(X,"unit","datetime",p0);if(z){let W=cY(this),Q=E(z,m$),Z=E(z,p),H=E(z,N$);return function(O,w,V,D,N){return f0(N)==="time"?m9(C$.fromEpochNsDiff(w,O),N):bL(yJ(O,w,V,D,N),w,T1(V,O),V,D,N)}(H,k9(H,Q,Z,W),Q,Z,G)}if(Y){let W=Q0(this),Q=aY({deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0},W.time),Z=E(Y,E$),H=E(Y,p),O=D1(H,Z,Z4(W.date,Q.deltaDays),"constrain");return function(w,V,D,N){if(sY(w,V)==0)return 0;PX(w),PX(V);let F=gJ(w,V,D,N);return N==="nanosecond"?B.toNumber(F.time.totalNs):bL(F,$4(V),w,null,D,N)}(k$(Z,{deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0}),k$(O,Q),H,G)}let U=b0(this);if(U0(U))throw new RangeError(`a starting point is required for ${U}s total`);if(U0(G))throw new RangeError(`a starting point is required for ${G}s total`);return m9(Q0(this).time,G)}toString($=void 0){k(this,V6);let X=W$($),Y=$5(X),z=u1(X,"trunc"),G=i4(X,"smallestUnit","time",void 0);if(G==="hour"||G==="minute")throw new RangeError('smallestUnit must be a time unit other than "hours" or "minutes"');let{precision:U,unit:W,increment:Q}=X5(G,Y);if(W==="nanosecond"&&Q===1)return oz(this,U);let Z=b0(this),H=cY(this),O=W3(H.time,Q,W,z);return H=m0(H.date,O),oz(_1(H,y0(Z,"second")),U)}toJSON(){return k(this,V6),oz(this,"auto")}toLocaleString($=void 0,X=void 0){if(k(this,V6),typeof Intl.DurationFormat=="function"){let Y=new Intl.DurationFormat($,X);return AV.call(Y,this)}return console.warn("Temporal.Duration.prototype.toLocaleString() requires Intl.DurationFormat."),oz(this,"auto")}valueOf(){j8("Duration")}static from($){return q1($)}static compare($,X,Y=void 0){let z=q1($),G=q1(X),U=W$(Y),{plainRelativeTo:W,zonedRelativeTo:Q}=bw(U);if(E(z,A4)===E(G,A4)&&E(z,K4)===E(G,K4)&&E(z,p4)===E(G,p4)&&E(z,_4)===E(G,_4)&&E(z,q4)===E(G,q4)&&E(z,T4)===E(G,T4)&&E(z,R4)===E(G,R4)&&E(z,P4)===E(G,P4)&&E(z,v4)===E(G,v4)&&E(z,d4)===E(G,d4))return 0;let Z=b0(z),H=b0(G),O=cY(z),w=cY(G);if(Q&&(f0(Z)==="date"||f0(H)==="date")){let L=E(Q,m$),K=E(Q,p),q=E(Q,N$),R=k9(q,L,K,O),_=k9(q,L,K,w);return l4(B.toNumber(B.subtract(R,_)))}let V=O.date.days,D=w.date.days;if(U0(Z)||U0(H)){if(!W)throw new RangeError("A starting point is required for years, months, or weeks comparison");V=kL(O.date,W),D=kL(w.date,W)}let N=O.time.add24HourDays(V),F=w.time.add24HourDays(D);return N.cmp(F)}}l0(X2,"Temporal.Duration");class v3{constructor($,X,Y="iso8601",z=1972){let G=M$($),U=M$(X),W=S4(Y===void 0?"iso8601":g6(Y)),Q=M$(z);RX(Q,G,U),TJ(this,{year:Q,month:G,day:U},W)}get monthCode(){return tL(this,"monthCode")}get day(){return tL(this,"day")}get calendarId(){return k(this,O1),E(this,p)}with($,X=void 0){if(k(this,O1),!E6($))throw new TypeError("invalid argument");Y2($);let Y=E(this,p),z=I4(Y,E(this,E$),"month-day");return z=TX(Y,z,E1(Y,$,["year","month","monthCode","day"],[],"partial")),dY(Y3(Y,z,x$(W$(X))),Y)}equals($){k(this,O1);let X=RL($);return w0(E(this,E$),E(X,E$))===0&&H0(E(this,p),E(X,p))}toString($=void 0){return k(this,O1),BL(this,e9(W$($)))}toJSON(){return k(this,O1),BL(this)}toLocaleString($=void 0,X=void 0){return k(this,O1),new V1($,X).format(this)}valueOf(){j8("PlainMonthDay")}toPlainDate($){if(k(this,O1),!E6($))throw new TypeError("argument should be an object");let X=E(this,p);return j4(v8(X,TX(X,I4(X,E(this,E$),"month-day"),E1(X,$,["year"],[],[])),"constrain"),X)}static from($,X=void 0){return RL($,X)}}function tL($,X){k($,O1);let Y=E($,E$);return Y5($).isoToDate(Y,{[X]:!0})[X]}function hw($){return T1($,GV())}l0(v3,"Temporal.PlainMonthDay");var FA={instant:()=>y1(GV()),plainDateTimeISO:($=R9())=>K1(hw(B4($)),"iso8601"),plainDateISO:($=R9())=>j4(hw(B4($)).isoDate,"iso8601"),plainTimeISO:($=R9())=>h0(hw(B4($)).time),timeZoneId:()=>R9(),zonedDateTimeISO:($=R9())=>{let X=B4($);return Q4(GV(),X,"iso8601")},[Symbol.toStringTag]:"Temporal.Now"};Object.defineProperty(FA,Symbol.toStringTag,{value:"Temporal.Now",writable:!1,enumerable:!1,configurable:!0});class w5{constructor($=0,X=0,Y=0,z=0,G=0,U=0){let W=$===void 0?0:M$($),Q=X===void 0?0:M$(X),Z=Y===void 0?0:M$(Y),H=z===void 0?0:M$(z),O=G===void 0?0:M$(G),w=U===void 0?0:M$(U);L3(W,Q,Z,H,O,w),RJ(this,{hour:W,minute:Q,second:Z,millisecond:H,microsecond:O,nanosecond:w})}get hour(){return k(this,J6),E(this,N6).hour}get minute(){return k(this,J6),E(this,N6).minute}get second(){return k(this,J6),E(this,N6).second}get millisecond(){return k(this,J6),E(this,N6).millisecond}get microsecond(){return k(this,J6),E(this,N6).microsecond}get nanosecond(){return k(this,J6),E(this,N6).nanosecond}with($,X=void 0){if(k(this,J6),!E6($))throw new TypeError("invalid argument");Y2($);let Y=rw($,"partial"),z=rw(this),{hour:G,minute:U,second:W,millisecond:Q,microsecond:Z,nanosecond:H}=Object.assign(z,Y),O=x$(W$(X));return{hour:G,minute:U,second:W,millisecond:Q,microsecond:Z,nanosecond:H}=E3(G,U,W,Q,Z,H,O),new w5(G,U,W,Q,Z,H)}add($){return k(this,J6),iL("add",this,$)}subtract($){return k(this,J6),iL("subtract",this,$)}until($,X=void 0){return k(this,J6),yL("until",this,$,X)}since($,X=void 0){return k(this,J6),yL("since",this,$,X)}round($){if(k(this,J6),$===void 0)throw new TypeError("options parameter is required");let X=typeof $=="string"?CX("smallestUnit",$):W$($),Y=G2(X),z=u1(X,"halfExpand"),G=i4(X,"smallestUnit","time",p0);return z2(Y,{hour:24,minute:60,second:60,millisecond:1000,microsecond:1000,nanosecond:1000}[G],!1),h0(XV(E(this,N6),Y,G,z))}equals($){k(this,J6);let X=_8($);return YV(E(this,N6),E(X,N6))===0}toString($=void 0){k(this,J6);let X=W$($),Y=$5(X),z=u1(X,"trunc"),G=i4(X,"smallestUnit","time",void 0);if(G==="hour")throw new RangeError('smallestUnit must be a time unit other than "hour"');let{precision:U,unit:W,increment:Q}=X5(G,Y);return jL(XV(E(this,N6),Q,W,z),U)}toJSON(){return k(this,J6),jL(E(this,N6),"auto")}toLocaleString($=void 0,X=void 0){return k(this,J6),new V1($,X).format(this)}valueOf(){j8("PlainTime")}static from($,X=void 0){return _8($,X)}static compare($,X){let Y=_8($),z=_8(X);return YV(E(Y,N6),E(z,N6))}}l0(w5,"Temporal.PlainTime");class C3{constructor($,X,Y="iso8601",z=1){let G=M$($),U=M$(X),W=S4(Y===void 0?"iso8601":g6(Y)),Q=M$(z);RX(G,U,Q),PJ(this,{year:G,month:U,day:Q},W)}get year(){return S0(this,"year")}get month(){return S0(this,"month")}get monthCode(){return S0(this,"monthCode")}get calendarId(){return k(this,e6),E(this,p)}get era(){return S0(this,"era")}get eraYear(){return S0(this,"eraYear")}get daysInMonth(){return S0(this,"daysInMonth")}get daysInYear(){return S0(this,"daysInYear")}get monthsInYear(){return S0(this,"monthsInYear")}get inLeapYear(){return S0(this,"inLeapYear")}with($,X=void 0){if(k(this,e6),!E6($))throw new TypeError("invalid argument");Y2($);let Y=E(this,p),z=I4(Y,E(this,E$),"year-month");return z=TX(Y,z,E1(Y,$,["year","month","monthCode"],[],"partial")),lY(d9(Y,z,x$(W$(X))),Y)}add($,X=void 0){return k(this,e6),rL("add",this,$,X)}subtract($,X=void 0){return k(this,e6),rL("subtract",this,$,X)}until($,X=void 0){return k(this,e6),mL("until",this,$,X)}since($,X=void 0){return k(this,e6),mL("since",this,$,X)}equals($){k(this,e6);let X=x9($);return w0(E(this,E$),E(X,E$))===0&&H0(E(this,p),E(X,p))}toString($=void 0){return k(this,e6),IL(this,e9(W$($)))}toJSON(){return k(this,e6),IL(this)}toLocaleString($=void 0,X=void 0){return k(this,e6),new V1($,X).format(this)}valueOf(){j8("PlainYearMonth")}toPlainDate($){if(k(this,e6),!E6($))throw new TypeError("argument should be an object");let X=E(this,p);return j4(v8(X,TX(X,I4(X,E(this,E$),"year-month"),E1(X,$,["day"],[],[])),"constrain"),X)}static from($,X=void 0){return x9($,X)}static compare($,X){let Y=x9($),z=x9(X);return w0(E(Y,E$),E(z,E$))}}function S0($,X){k($,e6);let Y=E($,E$);return Y5($).isoToDate(Y,{[X]:!0})[X]}l0(C3,"Temporal.PlainYearMonth");var Dk=V1.prototype.resolvedOptions;class j3{constructor($,X,Y="iso8601"){if(arguments.length<1)throw new TypeError("missing argument: epochNanoseconds is required");let z=Q3($),G=g6(X),{tzName:U,offsetMinutes:W}=T8(G);if(W===void 0){let Q=G3(U);if(!Q)throw new RangeError(`unknown time zone ${U}`);G=Q.identifier}else G=QV(W);CJ(this,z,G,S4(Y===void 0?"iso8601":g6(Y)))}get calendarId(){return k(this,v$),E(this,p)}get timeZoneId(){return k(this,v$),E(this,m$)}get year(){return J4(this,"year")}get month(){return J4(this,"month")}get monthCode(){return J4(this,"monthCode")}get day(){return J4(this,"day")}get hour(){return mY(this,"hour")}get minute(){return mY(this,"minute")}get second(){return mY(this,"second")}get millisecond(){return mY(this,"millisecond")}get microsecond(){return mY(this,"microsecond")}get nanosecond(){return mY(this,"nanosecond")}get era(){return J4(this,"era")}get eraYear(){return J4(this,"eraYear")}get epochMilliseconds(){return k(this,v$),R1(E(this,N$),"floor")}get epochNanoseconds(){return k(this,v$),pJ(E(this,N$))}get dayOfWeek(){return J4(this,"dayOfWeek")}get dayOfYear(){return J4(this,"dayOfYear")}get weekOfYear(){return J4(this,"weekOfYear")?.week}get yearOfWeek(){return J4(this,"weekOfYear")?.year}get hoursInDay(){k(this,v$);let $=E(this,m$),X=z0(this).isoDate,Y=r4(X.year,X.month,X.day+1),z=A8($,X),G=A8($,Y);return m9(C$.fromEpochNsDiff(G,z),"hour")}get daysInWeek(){return J4(this,"daysInWeek")}get daysInMonth(){return J4(this,"daysInMonth")}get daysInYear(){return J4(this,"daysInYear")}get monthsInYear(){return J4(this,"monthsInYear")}get inLeapYear(){return J4(this,"inLeapYear")}get offset(){return k(this,v$),nw(g0(E(this,m$),E(this,N$)))}get offsetNanoseconds(){return k(this,v$),g0(E(this,m$),E(this,N$))}with($,X=void 0){if(k(this,v$),!E6($))throw new TypeError("invalid zoned-date-time-like");Y2($);let Y=E(this,p),z=E(this,m$),G=g0(z,E(this,N$)),U=z0(this),W={...I4(Y,U.isoDate),...U.time,offset:nw(G)};W=TX(Y,W,E1(Y,$,["year","month","monthCode","day"],["hour","minute","second","millisecond","microsecond","nanosecond","offset"],"partial"));let Q=W$(X),Z=y9(Q),H=tz(Q,"prefer"),O=G5(Y,W,x$(Q)),w=U2(W.offset);return Q4(X3(O.isoDate,O.time,"option",w,z,Z,H,!1),z,Y)}withPlainTime($=void 0){k(this,v$);let X=E(this,m$),Y=E(this,p),z=z0(this).isoDate,G;return G=$===void 0?A8(X,z):H4(X,k$(z,E(_8($),N6)),"compatible"),Q4(G,X,Y)}withTimeZone($){k(this,v$);let X=B4($);return Q4(E(this,N$),X,E(this,p))}withCalendar($){k(this,v$);let X=U5($);return Q4(E(this,N$),E(this,m$),X)}add($,X=void 0){return k(this,v$),nL("add",this,$,X)}subtract($,X=void 0){return k(this,v$),nL("subtract",this,$,X)}until($,X=void 0){return k(this,v$),uL("until",this,$,X)}since($,X=void 0){return k(this,v$),uL("since",this,$,X)}round($){if(k(this,v$),$===void 0)throw new TypeError("options parameter is required");let X=typeof $=="string"?CX("smallestUnit",$):W$($),Y=G2(X),z=u1(X,"halfExpand"),G=i4(X,"smallestUnit","time",p0,["day"]),U={day:1,hour:24,minute:60,second:60,millisecond:1000,microsecond:1000,nanosecond:1000}[G];if(z2(Y,U,U===1),G==="nanosecond"&&Y===1)return Q4(E(this,N$),E(this,m$),E(this,p));let W=E(this,m$),Q=E(this,N$),Z=z0(this),H;if(G==="day"){let O=Z.isoDate,w=r4(O.year,O.month,O.day+1),V=A8(W,O),D=A8(W,w),N=B.subtract(D,V);H=C$.fromEpochNsDiff(Q,V).round(N,z).addToEpochNs(V)}else{let O=$V(Z,Y,G,z),w=g0(W,Q);H=X3(O.isoDate,O.time,"option",w,W,"compatible","prefer",!1)}return Q4(H,W,E(this,p))}equals($){k(this,v$);let X=S9($),Y=E(this,N$),z=E(X,N$);return!!B.equal(B.BigInt(Y),B.BigInt(z))&&!!jJ(E(this,m$),E(X,m$))&&H0(E(this,p),E(X,p))}toString($=void 0){k(this,v$);let X=W$($),Y=e9(X),z=$5(X),G=function(w){return u0(w,"offset",["auto","never"],"auto")}(X),U=u1(X,"trunc"),W=i4(X,"smallestUnit","time",void 0);if(W==="hour")throw new RangeError('smallestUnit must be a time unit other than "hour"');let Q=function(w){return u0(w,"timeZoneName",["auto","never","critical"],"auto")}(X),{precision:Z,unit:H,increment:O}=X5(W,z);return xL(this,Z,Y,Q,G,{unit:H,increment:O,roundingMode:U})}toLocaleString($=void 0,X=void 0){k(this,v$);let Y=W$(X),z=Object.create(null);if(function(Q,Z,H,O){if(Z==null)return;let w=Reflect.ownKeys(Z);for(let V=0;V<w.length;V++){let D=w[V];if(!H.some((N)=>Object.is(N,D))&&Object.prototype.propertyIsEnumerable.call(Z,D)){let N=Z[D];Q[D]=N}}}(z,Y,["timeZone"]),Y.timeZone!==void 0)throw new TypeError("ZonedDateTime toLocaleString does not accept a timeZone option");if(z.year===void 0&&z.month===void 0&&z.day===void 0&&z.era===void 0&&z.weekday===void 0&&z.dateStyle===void 0&&z.hour===void 0&&z.minute===void 0&&z.second===void 0&&z.fractionalSecondDigits===void 0&&z.timeStyle===void 0&&z.dayPeriod===void 0&&z.timeZoneName===void 0&&(z.timeZoneName="short"),z.timeZone=E(this,m$),SL(z.timeZone))throw new RangeError("toLocaleString does not currently support offset time zones");let G=new V1($,z),U=Dk.call(G).calendar,W=E(this,p);if(W!=="iso8601"&&U!=="iso8601"&&!H0(U,W))throw new RangeError(`cannot format ZonedDateTime with calendar ${W} in locale with calendar ${U}`);return G.format(y1(E(this,N$)))}toJSON(){return k(this,v$),xL(this,"auto")}valueOf(){j8("ZonedDateTime")}startOfDay(){k(this,v$);let $=E(this,m$);return Q4(A8($,z0(this).isoDate),$,E(this,p))}getTimeZoneTransition($){k(this,v$);let X=E(this,m$);if($===void 0)throw new TypeError("options parameter is required");let Y=u0(typeof $=="string"?CX("direction",$):W$($),"direction",["next","previous"],p0);if(Y===void 0)throw new TypeError("direction option is required");if(SL(X)||X==="UTC")return null;let z=E(this,N$),G=Y==="next"?HV(X,z):tw(X,z);return G===null?null:Q4(G,X,E(this,p))}toInstant(){return k(this,v$),y1(E(this,N$))}toPlainDate(){return k(this,v$),j4(z0(this).isoDate,E(this,p))}toPlainTime(){return k(this,v$),h0(z0(this).time)}toPlainDateTime(){return k(this,v$),K1(z0(this),E(this,p))}static from($,X=void 0){return S9($,X)}static compare($,X){let Y=S9($),z=S9(X),G=E(Y,N$),U=E(z,N$);return B.lessThan(B.BigInt(G),B.BigInt(U))?-1:B.greaterThan(B.BigInt(G),B.BigInt(U))?1:0}}function z0($){return T1(E($,m$),E($,N$))}function J4($,X){k($,v$);let Y=z0($).isoDate;return Y5($).isoToDate(Y,{[X]:!0})[X]}function mY($,X){return k($,v$),z0($).time[X]}l0(j3,"Temporal.ZonedDateTime");var B3=Object.freeze({__proto__:null,Duration:X2,Instant:T3,Now:FA,PlainDate:R3,PlainDateTime:P3,PlainMonthDay:v3,PlainTime:w5,PlainYearMonth:C3,ZonedDateTime:j3}),Lt=class ${toTemporalInstant(){return y1(m1(Date.prototype.valueOf.call(this)))}}.prototype.toTemporalInstant,Nk=[T3,R3,P3,X2,v3,w5,C3,j3];for(let $ of Nk){let X=Object.getOwnPropertyDescriptor($,"prototype");(X.configurable||X.enumerable||X.writable)&&(X.configurable=!1,X.enumerable=!1,X.writable=!1,Object.defineProperty($,"prototype",X))}var Ek=($)=>{let X=o8($,{key:"\uD83D\uDD0D Atom Token Index (Internal)",default:()=>{let Y=new Map;for(let[z,G]of $.atoms){if($Y(z))continue;let U=L0(G);if(G.family){let W=Y.get(G.family.key);if(!W||!("familyMembers"in W))W={key:G.family.key,familyMembers:new Map},Y.set(G.family.key,W);W.familyMembers.set(G.family.subKey,U)}else Y.set(z,U)}return Y},effects:[({setSelf:Y})=>{$.on.atomCreation.subscribe("introspection",(z)=>{if($Y(z.key))return;Y((G)=>{if(z.family){let{key:U,subKey:W}=z.family,Q=G.get(U);if(Q===void 0||!("familyMembers"in Q))Q={key:U,familyMembers:new Map},G.set(U,Q);Q.familyMembers.set(W,z)}else G.set(z.key,z);return G})}),$.on.atomDisposal.subscribe("introspection",(z)=>{Y((G)=>{if(z.family){let{key:U,subKey:W}=z.family,Q=G.get(U);if(Q&&"familyMembers"in Q){if(Q.familyMembers.delete(W),Q.familyMembers.size===0)G.delete(U)}}else G.delete(z.key);return G})})}]},void 0);return oX($,{key:"\uD83D\uDD0D Atom Token Index",get:({get:Y})=>Y(X)})},Fk=($)=>{let X=o8($,{key:"\uD83D\uDD0D Selector Token Index (Internal)",default:()=>{let Y=new Map;for(let z of[$.readonlySelectors,$.writableSelectors])for(let[G,U]of z){if($Y(G))continue;let W=L0(U);if(U.family){let Q=Y.get(U.family.key);if(!Q||!("familyMembers"in Q))Q={key:U.family.key,familyMembers:new Map},Y.set(U.family.key,Q);Q.familyMembers.set(U.family.subKey,W)}else Y.set(G,W)}return Y},effects:[({setSelf:Y})=>{$.on.selectorCreation.subscribe("introspection",(z)=>{if($Y(z.key))return;Y((G)=>{if(z.family){let{key:U,subKey:W}=z.family,Q=G.get(U);if(Q===void 0||!("familyMembers"in Q))Q={key:U,familyMembers:new Map},G.set(U,Q);Q.familyMembers.set(W,z)}else G.set(z.key,z);return G})}),$.on.selectorDisposal.subscribe("introspection",(z)=>{Y((G)=>{if(z.family){let{key:U,subKey:W}=z.family,Q=G.get(U);if(Q&&"familyMembers"in Q){if(Q.familyMembers.delete(W),Q.familyMembers.size===0)G.delete(U)}}else G.delete(z.key);return G})})}]},void 0);return oX($,{key:"\uD83D\uDD0D Selector Token Index",get:({get:Y})=>Y(X)})};var KV=class{supported;constructor($){this.supported=$}refine($){for(let[X,Y]of Object.entries(this.supported))try{if(Y($)===!0&&Y!==Boolean)return{type:X,data:$}}catch(z){try{if($ instanceof Y)return{type:X,data:$}}catch(G){}}return null}},LA=new KV({number:($)=>typeof $==="number",string:($)=>typeof $==="string",boolean:($)=>typeof $==="boolean",null:($)=>$===null});function JA($){if(!$)return!1;return Object.getPrototypeOf($)===Object.prototype}var AA=new KV({object:JA,array:($)=>Array.isArray($)}),Mk=new KV({...LA.supported,...AA.supported}),I3=($)=>{if($===void 0)return"undefined";let X=Mk.refine($);if(X)return X.type;return Object.getPrototypeOf($).constructor.name};var _t=class ${store;auditorCreatedAt=performance.now();statesCreatedAt=new Map;atomIndex;selectorIndex;disposed=!1;unsubscribeFromAtomCreation;unsubscribeFromAtomDisposal;unsubscribeFromSelectorCreation;unsubscribeFromSelectorDisposal;constructor(X=R6.STORE){this.store=X,this.atomIndex=Ek(this.store),this.selectorIndex=Fk(this.store),this.unsubscribeFromAtomCreation=this.store.on.atomCreation.subscribe(`auditor-${this.auditorCreatedAt}`,({key:Y})=>{this.statesCreatedAt.set(Y,performance.now()-this.auditorCreatedAt)}),this.unsubscribeFromAtomDisposal=this.store.on.atomDisposal.subscribe(`auditor-${this.auditorCreatedAt}`,({key:Y})=>{this.statesCreatedAt.delete(Y)}),this.unsubscribeFromSelectorCreation=this.store.on.selectorCreation.subscribe(`auditor-${this.auditorCreatedAt}`,({key:Y})=>{this.statesCreatedAt.set(Y,performance.now()-this.auditorCreatedAt)}),this.unsubscribeFromSelectorDisposal=this.store.on.selectorDisposal.subscribe(`auditor-${this.auditorCreatedAt}`,({key:Y})=>{this.statesCreatedAt.delete(Y)})}static DEFAULT_LIST_RESOURCES_PARAM={atomFamilies:!0,selectorFamilies:!0};listResources(X=$.DEFAULT_LIST_RESOURCES_PARAM){if(this.disposed)throw new Error("This Auditor has been disposed");let Y=sU(this.atomIndex),z=sU(this.selectorIndex),G=[...Y.values()].filter((Z)=>("familyMembers"in Z)),U=[...z.values()].filter((Z)=>("familyMembers"in Z)),W=performance.now(),Q=[];if(X.atomFamilies)for(let Z of G){let H=Z.familyMembers.values();for(let O of H){let V=this.statesCreatedAt.get(O.key)??this.auditorCreatedAt,D=W-V;Q.push([O,D])}}if(X.selectorFamilies)for(let Z of U){let H=Z.familyMembers.values();for(let O of H){let V=this.statesCreatedAt.get(O.key)??this.auditorCreatedAt,D=W-V;Q.push([O,D])}}return Q}[Symbol.dispose](){this.unsubscribeFromAtomCreation(),this.unsubscribeFromAtomDisposal(),this.unsubscribeFromSelectorCreation(),this.unsubscribeFromSelectorDisposal(),this.disposed=!0}},MA=($,X)=>{let Y=(z,G)=>{let W=((Z,H)=>{let O=X(Z,H);if(O)return O;return null})(z,G);if(W?.jobComplete??W?.pathComplete)return W;let Q=Array.isArray(G)?G.map((Z,H)=>[H,Z]):JA(G)?Object.entries(G):[];for(let[Z,H]of Q){let O=Y([...z,Z],H);if(O?.jobComplete)return O}return{}};Y([],$)};function Lk($,X){return{summary:`${$<X?"+":"-"}${Math.abs($-X)} (${$} \u2192 ${X})`}}function Jk($,X){return{summary:`${$.length<X.length?"+":"-"}${Math.abs($.length-X.length)} ("${$}" \u2192 "${X}")`}}function Ak($,X){return{summary:`${$} \u2192 ${X}`}}function KA($,X,Y){let z="",G=[],U=[],W=[];return MA($,(Q,Z)=>{let H;for(H of Q){let O=X[H];if(O===void 0)U.push([H,JSON.stringify(Z)]);else{let w=Y(Z,O);if(w.summary!=="No Change")W.push([H,w])}}}),MA(X,(Q,Z)=>{let H;for(H of Q)if($[H]===void 0)G.push([H,JSON.stringify(Z)])}),z=`\uFF5E${W.length} \uFF0B${G.length} \uFF0D${U.length}`,{summary:z,added:G,removed:U,changed:W}}function Kk($,X,Y){return KA($,X,Y)}var _k=class{leafRefinery;treeRefinery;leafDiffers;treeDiffers;constructor($,X,Y){this.leafRefinery=$,this.treeRefinery=X,this.leafDiffers={},this.treeDiffers={};for(let z of Object.keys($.supported)){let G=Y[z];this.leafDiffers[z]=G}for(let z of Object.keys(X.supported)){let G=Y[z];this.treeDiffers[z]=G}}diff($,X){if($===X)return{summary:"No Change"};let Y=this.leafRefinery.refine($)??this.treeRefinery.refine($),z=this.leafRefinery.refine(X)??this.treeRefinery.refine(X);if(Y!==null&&z!==null){if(Y.type===z.type){if(Y.type in this.leafDiffers)return this.leafDiffers[Y.type](Y.data,z.data);if(Y.type in this.treeDiffers)return this.treeDiffers[Y.type](Y.data,z.data,(Q,Z)=>this.diff(Q,Z))}}let G=I3($),U=I3(X);if(G===U)return{summary:`${G} \u2192 ${U}`};return{summary:`Type change: ${G} \u2192 ${U}`}}},qt=new _k(LA,AA,{number:Lk,string:Jk,boolean:Ak,null:()=>({summary:"No Change"}),object:KA,array:Kk});var A=Symbol.for("drizzle:entityKind"),vt=Symbol.for("drizzle:hasOwnEntityKind");function b($,X){if(!$||typeof $!=="object")return!1;if($ instanceof X)return!0;if(!Object.prototype.hasOwnProperty.call(X,A))throw new Error(`Class "${X.name??"<unknown>"}" doesn't look like a Drizzle entity. If this is incorrect and the class is provided by Drizzle, please report this as a bug.`);let Y=Object.getPrototypeOf($).constructor;if(Y)while(Y){if(A in Y&&Y[A]===X[A])return!0;Y=Object.getPrototypeOf(Y)}return!1}class r${constructor($,X){this.table=$,this.config=X,this.name=X.name,this.keyAsName=X.keyAsName,this.notNull=X.notNull,this.default=X.default,this.defaultFn=X.defaultFn,this.onUpdateFn=X.onUpdateFn,this.hasDefault=X.hasDefault,this.primary=X.primaryKey,this.isUnique=X.isUnique,this.uniqueName=X.uniqueName,this.uniqueType=X.uniqueType,this.dataType=X.dataType,this.columnType=X.columnType,this.generated=X.generated,this.generatedIdentity=X.generatedIdentity}static[A]="Column";name;keyAsName;primary;notNull;default;defaultFn;onUpdateFn;hasDefault;isUnique;uniqueName;uniqueType;dataType;columnType;enumValues=void 0;generated=void 0;generatedIdentity=void 0;config;mapFromDriverValue($){return $}mapToDriverValue($){return $}shouldDisableInsert(){return this.config.generated!==void 0&&this.config.generated.type!=="byDefault"}}class _V{static[A]="ColumnBuilder";config;constructor($,X,Y){this.config={name:$,keyAsName:$==="",notNull:!1,default:void 0,hasDefault:!1,primaryKey:!1,isUnique:!1,uniqueName:void 0,uniqueType:void 0,dataType:X,columnType:Y,generated:void 0}}$type(){return this}notNull(){return this.config.notNull=!0,this}default($){return this.config.default=$,this.config.hasDefault=!0,this}$defaultFn($){return this.config.defaultFn=$,this.config.hasDefault=!0,this}$default=this.$defaultFn;$onUpdateFn($){return this.config.onUpdateFn=$,this.config.hasDefault=!0,this}$onUpdate=this.$onUpdateFn;primaryKey(){return this.config.primaryKey=!0,this.config.notNull=!0,this}setName($){if(this.config.name!=="")return;this.config.name=$}}var c1=Symbol.for("drizzle:Name");class qV{static[A]="PgForeignKeyBuilder";reference;_onUpdate="no action";_onDelete="no action";constructor($,X){if(this.reference=()=>{let{name:Y,columns:z,foreignColumns:G}=$();return{name:Y,columns:z,foreignTable:G[0].table,foreignColumns:G}},X)this._onUpdate=X.onUpdate,this._onDelete=X.onDelete}onUpdate($){return this._onUpdate=$===void 0?"no action":$,this}onDelete($){return this._onDelete=$===void 0?"no action":$,this}build($){return new _A($,this)}}class _A{constructor($,X){this.table=$,this.reference=X.reference,this.onUpdate=X._onUpdate,this.onDelete=X._onDelete}static[A]="PgForeignKey";reference;onUpdate;onDelete;getName(){let{name:$,columns:X,foreignColumns:Y}=this.reference(),z=X.map((W)=>W.name),G=Y.map((W)=>W.name),U=[this.table[c1],...z,Y[0].table[c1],...G];return $??`${U.join("_")}_fk`}}function x3($,...X){return $(...X)}function qA($,X){return`${$[c1]}_${X.join("_")}_unique`}function TA($,X,Y){for(let z=X;z<$.length;z++){let G=$[z];if(G==="\\"){z++;continue}if(G==='"')return[$.slice(X,z).replace(/\\/g,""),z+1];if(Y)continue;if(G===","||G==="}")return[$.slice(X,z).replace(/\\/g,""),z]}return[$.slice(X).replace(/\\/g,""),$.length]}function RA($,X=0){let Y=[],z=X,G=!1;while(z<$.length){let U=$[z];if(U===","){if(G||z===X)Y.push("");G=!0,z++;continue}if(G=!1,U==="\\"){z+=2;continue}if(U==='"'){let[Z,H]=TA($,z+1,!0);Y.push(Z),z=H;continue}if(U==="}")return[Y,z+1];if(U==="{"){let[Z,H]=RA($,z+1);Y.push(Z),z=H;continue}let[W,Q]=TA($,z,!1);Y.push(W),z=Q}return[Y,z]}function PA($){let[X]=RA($,1);return X}function TV($){return`{${$.map((X)=>{if(Array.isArray(X))return TV(X);if(typeof X==="string")return`"${X.replace(/\\/g,"\\\\").replace(/"/g,"\\\"")}"`;return`${X}`}).join(",")}}`}class X$ extends _V{foreignKeyConfigs=[];static[A]="PgColumnBuilder";array($){return new CA(this.config.name,this,$)}references($,X={}){return this.foreignKeyConfigs.push({ref:$,actions:X}),this}unique($,X){return this.config.isUnique=!0,this.config.uniqueName=$,this.config.uniqueType=X?.nulls,this}generatedAlwaysAs($){return this.config.generated={as:$,type:"always",mode:"stored"},this}buildForeignKeys($,X){return this.foreignKeyConfigs.map(({ref:Y,actions:z})=>{return x3((G,U)=>{let W=new qV(()=>{let Q=G();return{columns:[$],foreignColumns:[Q]}});if(U.onUpdate)W.onUpdate(U.onUpdate);if(U.onDelete)W.onDelete(U.onDelete);return W.build(X)},Y,z)})}buildExtraConfigColumn($){return new vA($,this.config)}}class i extends r${constructor($,X){if(!X.uniqueName)X.uniqueName=qA($,[X.name]);super($,X);this.table=$}static[A]="PgColumn"}class vA extends i{static[A]="ExtraConfigColumn";getSQLType(){return this.getSQLType()}indexConfig={order:this.config.order??"asc",nulls:this.config.nulls??"last",opClass:this.config.opClass};defaultConfig={order:"asc",nulls:"last",opClass:void 0};asc(){return this.indexConfig.order="asc",this}desc(){return this.indexConfig.order="desc",this}nullsFirst(){return this.indexConfig.nulls="first",this}nullsLast(){return this.indexConfig.nulls="last",this}op($){return this.indexConfig.opClass=$,this}}class V5{static[A]="IndexedColumn";constructor($,X,Y,z){this.name=$,this.keyAsName=X,this.type=Y,this.indexConfig=z}name;keyAsName;type;indexConfig}class CA extends X${static[A]="PgArrayBuilder";constructor($,X,Y){super($,"array","PgArray");this.config.baseBuilder=X,this.config.size=Y}build($){let X=this.config.baseBuilder.build($);return new RV($,this.config,X)}}class RV extends i{constructor($,X,Y,z){super($,X);this.baseColumn=Y,this.range=z,this.size=X.size}size;static[A]="PgArray";getSQLType(){return`${this.baseColumn.getSQLType()}[${typeof this.size==="number"?this.size:""}]`}mapFromDriverValue($){if(typeof $==="string")$=PA($);return $.map((X)=>this.baseColumn.mapFromDriverValue(X))}mapToDriverValue($,X=!1){let Y=$.map((z)=>z===null?null:b(this.baseColumn,RV)?this.baseColumn.mapToDriverValue(z,!0):this.baseColumn.mapToDriverValue(z));if(X)return Y;return TV(Y)}}class jA extends X${static[A]="PgEnumObjectColumnBuilder";constructor($,X){super($,"string","PgEnumObjectColumn");this.config.enum=X}build($){return new BA($,this.config)}}class BA extends i{static[A]="PgEnumObjectColumn";enum;enumValues=this.config.enum.enumValues;constructor($,X){super($,X);this.enum=X.enum}getSQLType(){return this.enum.enumName}}var S3=Symbol.for("drizzle:isPgEnum");function IA($){return!!$&&typeof $==="function"&&S3 in $&&$[S3]===!0}class xA extends X${static[A]="PgEnumColumnBuilder";constructor($,X){super($,"string","PgEnumColumn");this.config.enum=X}build($){return new SA($,this.config)}}class SA extends i{static[A]="PgEnumColumn";enum=this.config.enum;enumValues=this.config.enum.enumValues;constructor($,X){super($,X);this.enum=X.enum}getSQLType(){return this.enum.enumName}}function D5($,X){return Array.isArray(X)?qk($,[...X],void 0):Tk($,X,void 0)}function qk($,X,Y){let z=Object.assign((G)=>new xA(G??"",z),{enumName:$,enumValues:X,schema:Y,[S3]:!0});return z}function Tk($,X,Y){let z=Object.assign((G)=>new jA(G??"",z),{enumName:$,enumValues:Object.values(X),schema:Y,[S3]:!0});return z}class q6{static[A]="Subquery";constructor($,X,Y,z=!1,G=[]){this._={brand:"Subquery",sql:$,selectedFields:X,alias:Y,isWith:z,usedTables:G}}}class N5 extends q6{static[A]="WithSubquery"}var kA="0.44.3";var PV,vV,n$={startActiveSpan($,X){if(!PV)return X();if(!vV)vV=PV.trace.getTracer("drizzle-orm",kA);return x3((Y,z)=>z.startActiveSpan($,(G)=>{try{return X(G)}catch(U){throw G.setStatus({code:Y.SpanStatusCode.ERROR,message:U instanceof Error?U.message:"Unknown error"}),U}finally{G.end()}}),PV,vV)}};var $6=Symbol.for("drizzle:ViewBaseConfig");var SX=Symbol.for("drizzle:Schema"),k3=Symbol.for("drizzle:Columns"),bA=Symbol.for("drizzle:ExtraConfigColumns"),CV=Symbol.for("drizzle:OriginalName"),jV=Symbol.for("drizzle:BaseName"),E5=Symbol.for("drizzle:IsAlias"),fA=Symbol.for("drizzle:ExtraConfigBuilder"),Rk=Symbol.for("drizzle:IsDrizzleTable");class o{static[A]="Table";static Symbol={Name:c1,Schema:SX,OriginalName:CV,Columns:k3,ExtraConfigColumns:bA,BaseName:jV,IsAlias:E5,ExtraConfigBuilder:fA};[c1];[CV];[SX];[k3];[bA];[jV];[E5]=!1;[Rk]=!0;[fA]=void 0;constructor($,X,Y){this[c1]=this[CV]=$,this[SX]=X,this[jV]=Y}}function r6($){return $[c1]}function kX($){return`${$[SX]??"public"}.${$[c1]}`}function BV($){return $!==null&&$!==void 0&&typeof $.getSQL==="function"}function Pk($){let X={sql:"",params:[]};for(let Y of $)if(X.sql+=Y.sql,X.params.push(...Y.params),Y.typings?.length){if(!X.typings)X.typings=[];X.typings.push(...Y.typings)}return X}class y6{static[A]="StringChunk";value;constructor($){this.value=Array.isArray($)?$:[$]}getSQL(){return new e([this])}}class e{constructor($){this.queryChunks=$;for(let X of $)if(b(X,o)){let Y=X[o.Symbol.Schema];this.usedTables.push(Y===void 0?X[o.Symbol.Name]:Y+"."+X[o.Symbol.Name])}}static[A]="SQL";decoder=gA;shouldInlineParams=!1;usedTables=[];append($){return this.queryChunks.push(...$.queryChunks),this}toQuery($){return n$.startActiveSpan("drizzle.buildSQL",(X)=>{let Y=this.buildQueryFromSourceParams(this.queryChunks,$);return X?.setAttributes({"drizzle.query.text":Y.sql,"drizzle.query.params":JSON.stringify(Y.params)}),Y})}buildQueryFromSourceParams($,X){let Y=Object.assign({},X,{inlineParams:X.inlineParams||this.shouldInlineParams,paramStartIndex:X.paramStartIndex||{value:0}}),{casing:z,escapeName:G,escapeParam:U,prepareTyping:W,inlineParams:Q,paramStartIndex:Z}=Y;return Pk($.map((H)=>{if(b(H,y6))return{sql:H.value.join(""),params:[]};if(b(H,b3))return{sql:G(H.value),params:[]};if(H===void 0)return{sql:"",params:[]};if(Array.isArray(H)){let O=[new y6("(")];for(let[w,V]of H.entries())if(O.push(V),w<H.length-1)O.push(new y6(", "));return O.push(new y6(")")),this.buildQueryFromSourceParams(O,Y)}if(b(H,e))return this.buildQueryFromSourceParams(H.queryChunks,{...Y,inlineParams:Q||H.shouldInlineParams});if(b(H,o)){let O=H[o.Symbol.Schema],w=H[o.Symbol.Name];return{sql:O===void 0||H[E5]?G(w):G(O)+"."+G(w),params:[]}}if(b(H,r$)){let O=z.getColumnCasing(H);if(X.invokeSource==="indexes")return{sql:G(O),params:[]};let w=H.table[o.Symbol.Schema];return{sql:H.table[E5]||w===void 0?G(H.table[o.Symbol.Name])+"."+G(O):G(w)+"."+G(H.table[o.Symbol.Name])+"."+G(O),params:[]}}if(b(H,o4)){let O=H[$6].schema,w=H[$6].name;return{sql:O===void 0||H[$6].isAlias?G(w):G(O)+"."+G(w),params:[]}}if(b(H,F1)){if(b(H.value,I8))return{sql:U(Z.value++,H),params:[H],typings:["none"]};let O=H.value===null?null:H.encoder.mapToDriverValue(H.value);if(b(O,e))return this.buildQueryFromSourceParams([O],Y);if(Q)return{sql:this.mapInlineParam(O,Y),params:[]};let w=["none"];if(W)w=[W(H.encoder)];return{sql:U(Z.value++,O),params:[O],typings:w}}if(b(H,I8))return{sql:U(Z.value++,H),params:[H],typings:["none"]};if(b(H,e.Aliased)&&H.fieldAlias!==void 0)return{sql:G(H.fieldAlias),params:[]};if(b(H,q6)){if(H._.isWith)return{sql:G(H._.alias),params:[]};return this.buildQueryFromSourceParams([new y6("("),H._.sql,new y6(") "),new b3(H._.alias)],Y)}if(IA(H)){if(H.schema)return{sql:G(H.schema)+"."+G(H.enumName),params:[]};return{sql:G(H.enumName),params:[]}}if(BV(H)){if(H.shouldOmitSQLParens?.())return this.buildQueryFromSourceParams([H.getSQL()],Y);return this.buildQueryFromSourceParams([new y6("("),H.getSQL(),new y6(")")],Y)}if(Q)return{sql:this.mapInlineParam(H,Y),params:[]};return{sql:U(Z.value++,H),params:[H],typings:["none"]}}))}mapInlineParam($,{escapeString:X}){if($===null)return"null";if(typeof $==="number"||typeof $==="boolean")return $.toString();if(typeof $==="string")return X($);if(typeof $==="object"){let Y=$.toString();if(Y==="[object Object]")return X(JSON.stringify($));return X(Y)}throw new Error("Unexpected param value: "+$)}getSQL(){return this}as($){if($===void 0)return this;return new e.Aliased(this,$)}mapWith($){return this.decoder=typeof $==="function"?{mapFromDriverValue:$}:$,this}inlineParams(){return this.shouldInlineParams=!0,this}if($){return $?this:void 0}}class b3{constructor($){this.value=$}static[A]="Name";brand;getSQL(){return new e([this])}}function hA($){return typeof $==="object"&&$!==null&&"mapToDriverValue"in $&&typeof $.mapToDriverValue==="function"}var gA={mapFromDriverValue:($)=>$},yA={mapToDriverValue:($)=>$},Ea={...gA,...yA};class F1{constructor($,X=yA){this.value=$,this.encoder=X}static[A]="Param";brand;getSQL(){return new e([this])}}function T($,...X){let Y=[];if(X.length>0||$.length>0&&$[0]!=="")Y.push(new y6($[0]));for(let[z,G]of X.entries())Y.push(G,new y6($[z+1]));return new e(Y)}(($)=>{function X(){return new e([])}$.empty=X;function Y(Z){return new e(Z)}$.fromList=Y;function z(Z){return new e([new y6(Z)])}$.raw=z;function G(Z,H){let O=[];for(let[w,V]of Z.entries()){if(w>0&&H!==void 0)O.push(H);O.push(V)}return new e(O)}$.join=G;function U(Z){return new b3(Z)}$.identifier=U;function W(Z){return new I8(Z)}$.placeholder=W;function Q(Z,H){return new F1(Z,H)}$.param=Q})(T||(T={}));(($)=>{class X{constructor(Y,z){this.sql=Y,this.fieldAlias=z}static[A]="SQL.Aliased";isSelectionField=!1;getSQL(){return this.sql}clone(){return new X(this.sql,this.fieldAlias)}}$.Aliased=X})(e||(e={}));class I8{constructor($){this.name=$}static[A]="Placeholder";getSQL(){return new e([this])}}function IV($,X){return $.map((Y)=>{if(b(Y,I8)){if(!(Y.name in X))throw new Error(`No value for placeholder "${Y.name}" was provided`);return X[Y.name]}if(b(Y,F1)&&b(Y.value,I8)){if(!(Y.value.name in X))throw new Error(`No value for placeholder "${Y.value.name}" was provided`);return Y.encoder.mapToDriverValue(X[Y.value.name])}return Y})}var vk=Symbol.for("drizzle:IsDrizzleView");class o4{static[A]="View";[$6];[vk]=!0;constructor({name:$,schema:X,selectedFields:Y,query:z}){this[$6]={name:$,originalName:$,schema:X,selectedFields:Y,query:z,isExisting:!z,isAlias:!1}}getSQL(){return new e([this])}}r$.prototype.getSQL=function(){return new e([this])};o.prototype.getSQL=function(){return new e([this])};q6.prototype.getSQL=function(){return new e([this])};class Q2{constructor($){this.table=$}static[A]="ColumnAliasProxyHandler";get($,X){if(X==="table")return this.table;return $[X]}}class F5{constructor($,X){this.alias=$,this.replaceOriginalName=X}static[A]="TableAliasProxyHandler";get($,X){if(X===o.Symbol.IsAlias)return!0;if(X===o.Symbol.Name)return this.alias;if(this.replaceOriginalName&&X===o.Symbol.OriginalName)return this.alias;if(X===$6)return{...$[$6],name:this.alias,isAlias:!0};if(X===o.Symbol.Columns){let z=$[o.Symbol.Columns];if(!z)return z;let G={};return Object.keys(z).map((U)=>{G[U]=new Proxy(z[U],new Q2(new Proxy($,this)))}),G}let Y=$[X];if(b(Y,r$))return new Proxy(Y,new Q2(new Proxy($,this)));return Y}}function f3($,X){return new Proxy($,new F5(X,!1))}function D0($,X){return new Proxy($,new Q2(new Proxy($.table,new F5(X,!1))))}function xV($,X){return new e.Aliased(M5($.sql,X),$.fieldAlias)}function M5($,X){return T.join($.queryChunks.map((Y)=>{if(b(Y,r$))return D0(Y,X);if(b(Y,e))return M5(Y,X);if(b(Y,e.Aliased))return xV(Y,X);return Y}))}class h3 extends Error{static[A]="DrizzleError";constructor({message:$,cause:X}){super($);this.name="DrizzleError",this.cause=X}}class SV extends h3{static[A]="TransactionRollbackError";constructor(){super({message:"Rollback"})}}class mA{static[A]="ConsoleLogWriter";write($){console.log($)}}class kV{static[A]="DefaultLogger";writer;constructor($){this.writer=$?.writer??new mA}logQuery($,X){let Y=X.map((G)=>{try{return JSON.stringify(G)}catch{return String(G)}}),z=Y.length?` -- params: [${Y.join(", ")}]`:"";this.writer.write(`Query: ${$}${z}`)}}class bV{static[A]="NoopLogger";logQuery(){}}class k4{static[A]="QueryPromise";[Symbol.toStringTag]="QueryPromise";catch($){return this.then(void 0,$)}finally($){return this.then((X)=>{return $?.(),X},(X)=>{throw $?.(),X})}then($,X){return this.execute().then($,X)}}function uA($,X,Y){let z={},G=$.reduce((U,{path:W,field:Q},Z)=>{let H;if(b(Q,r$))H=Q;else if(b(Q,e))H=Q.decoder;else H=Q.sql.decoder;let O=U;for(let[w,V]of W.entries())if(w<W.length-1){if(!(V in O))O[V]={};O=O[V]}else{let D=X[Z],N=O[V]=D===null?null:H.mapFromDriverValue(D);if(Y&&b(Q,r$)&&W.length===2){let F=W[0];if(!(F in z))z[F]=N===null?r6(Q.table):!1;else if(typeof z[F]==="string"&&z[F]!==r6(Q.table))z[F]=!1}}return U},{});if(Y&&Object.keys(z).length>0){for(let[U,W]of Object.entries(z))if(typeof W==="string"&&!Y[W])G[U]=null}return G}function P1($,X){return Object.entries($).reduce((Y,[z,G])=>{if(typeof z!=="string")return Y;let U=X?[...X,z]:[z];if(b(G,r$)||b(G,e)||b(G,e.Aliased))Y.push({path:U,field:G});else if(b(G,o))Y.push(...P1(G[o.Symbol.Columns],U));else Y.push(...P1(G,U));return Y},[])}function L5($,X){let Y=Object.keys($),z=Object.keys(X);if(Y.length!==z.length)return!1;for(let[G,U]of Y.entries())if(U!==z[G])return!1;return!0}function g3($,X){let Y=Object.entries(X).filter(([,z])=>z!==void 0).map(([z,G])=>{if(b(G,e)||b(G,r$))return[z,G];else return[z,new F1(G,$[o.Symbol.Columns][z])]});if(Y.length===0)throw new Error("No values to set");return Object.fromEntries(Y)}function cA($,X){for(let Y of X)for(let z of Object.getOwnPropertyNames(Y.prototype)){if(z==="constructor")continue;Object.defineProperty($.prototype,z,Object.getOwnPropertyDescriptor(Y.prototype,z)||Object.create(null))}}function pA($){return $[o.Symbol.Columns]}function i0($){return b($,q6)?$._.alias:b($,o4)?$[$6].name:b($,e)?void 0:$[o.Symbol.IsAlias]?$[o.Symbol.Name]:$[o.Symbol.BaseName]}function I$($,X){return{name:typeof $==="string"&&$.length>0?$:"",config:typeof $==="object"?$:X}}function dA($){if(typeof $!=="object"||$===null)return!1;if($.constructor.name!=="Object")return!1;if("logger"in $){let X=typeof $.logger;if(X!=="boolean"&&(X!=="object"||typeof $.logger.logQuery!=="function")&&X!=="undefined")return!1;return!0}if("schema"in $){let X=typeof $.schema;if(X!=="object"&&X!=="undefined")return!1;return!0}if("casing"in $){let X=typeof $.casing;if(X!=="string"&&X!=="undefined")return!1;return!0}if("mode"in $){if($.mode!=="default"||$.mode!=="planetscale"||$.mode!==void 0)return!1;return!0}if("connection"in $){let X=typeof $.connection;if(X!=="string"&&X!=="object"&&X!=="undefined")return!1;return!0}if("client"in $){let X=typeof $.client;if(X!=="object"&&X!=="function"&&X!=="undefined")return!1;return!0}if(Object.keys($).length===0)return!0;return!1}class x8 extends X${static[A]="PgIntColumnBaseBuilder";generatedAlwaysAsIdentity($){if($){let{name:X,...Y}=$;this.config.generatedIdentity={type:"always",sequenceName:X,sequenceOptions:Y}}else this.config.generatedIdentity={type:"always"};return this.config.hasDefault=!0,this.config.notNull=!0,this}generatedByDefaultAsIdentity($){if($){let{name:X,...Y}=$;this.config.generatedIdentity={type:"byDefault",sequenceName:X,sequenceOptions:Y}}else this.config.generatedIdentity={type:"byDefault"};return this.config.hasDefault=!0,this.config.notNull=!0,this}}class lA extends x8{static[A]="PgBigInt53Builder";constructor($){super($,"number","PgBigInt53")}build($){return new iA($,this.config)}}class iA extends i{static[A]="PgBigInt53";getSQLType(){return"bigint"}mapFromDriverValue($){if(typeof $==="number")return $;return Number($)}}class rA extends x8{static[A]="PgBigInt64Builder";constructor($){super($,"bigint","PgBigInt64")}build($){return new nA($,this.config)}}class nA extends i{static[A]="PgBigInt64";getSQLType(){return"bigint"}mapFromDriverValue($){return BigInt($)}}function oA($,X){let{name:Y,config:z}=I$($,X);if(z.mode==="number")return new lA(Y);return new rA(Y)}class tA extends X${static[A]="PgBigSerial53Builder";constructor($){super($,"number","PgBigSerial53");this.config.hasDefault=!0,this.config.notNull=!0}build($){return new aA($,this.config)}}class aA extends i{static[A]="PgBigSerial53";getSQLType(){return"bigserial"}mapFromDriverValue($){if(typeof $==="number")return $;return Number($)}}class sA extends X${static[A]="PgBigSerial64Builder";constructor($){super($,"bigint","PgBigSerial64");this.config.hasDefault=!0}build($){return new eA($,this.config)}}class eA extends i{static[A]="PgBigSerial64";getSQLType(){return"bigserial"}mapFromDriverValue($){return BigInt($)}}function $K($,X){let{name:Y,config:z}=I$($,X);if(z.mode==="number")return new tA(Y);return new sA(Y)}class XK extends X${static[A]="PgBooleanBuilder";constructor($){super($,"boolean","PgBoolean")}build($){return new YK($,this.config)}}class YK extends i{static[A]="PgBoolean";getSQLType(){return"boolean"}}function J5($){return new XK($??"")}class GK extends X${static[A]="PgCharBuilder";constructor($,X){super($,"string","PgChar");this.config.length=X.length,this.config.enumValues=X.enum}build($){return new zK($,this.config)}}class zK extends i{static[A]="PgChar";length=this.config.length;enumValues=this.config.enumValues;getSQLType(){return this.length===void 0?"char":`char(${this.length})`}}function UK($,X={}){let{name:Y,config:z}=I$($,X);return new GK(Y,z)}class WK extends X${static[A]="PgCidrBuilder";constructor($){super($,"string","PgCidr")}build($){return new QK($,this.config)}}class QK extends i{static[A]="PgCidr";getSQLType(){return"cidr"}}function ZK($){return new WK($??"")}class HK extends X${static[A]="PgCustomColumnBuilder";constructor($,X,Y){super($,"custom","PgCustomColumn");this.config.fieldConfig=X,this.config.customTypeParams=Y}build($){return new OK($,this.config)}}class OK extends i{static[A]="PgCustomColumn";sqlName;mapTo;mapFrom;constructor($,X){super($,X);this.sqlName=X.customTypeParams.dataType(X.fieldConfig),this.mapTo=X.customTypeParams.toDriver,this.mapFrom=X.customTypeParams.fromDriver}getSQLType(){return this.sqlName}mapFromDriverValue($){return typeof this.mapFrom==="function"?this.mapFrom($):$}mapToDriverValue($){return typeof this.mapTo==="function"?this.mapTo($):$}}function wK($){return(X,Y)=>{let{name:z,config:G}=I$(X,Y);return new HK(z,G,$)}}class r0 extends X${static[A]="PgDateColumnBaseBuilder";defaultNow(){return this.default(T`now()`)}}class VK extends r0{static[A]="PgDateBuilder";constructor($){super($,"date","PgDate")}build($){return new y3($,this.config)}}class y3 extends i{static[A]="PgDate";getSQLType(){return"date"}mapFromDriverValue($){return new Date($)}mapToDriverValue($){return $.toISOString()}}class DK extends r0{static[A]="PgDateStringBuilder";constructor($){super($,"string","PgDateString")}build($){return new m3($,this.config)}}class m3 extends i{static[A]="PgDateString";getSQLType(){return"date"}}function NK($,X){let{name:Y,config:z}=I$($,X);if(z?.mode==="date")return new VK(Y);return new DK(Y)}class EK extends X${static[A]="PgDoublePrecisionBuilder";constructor($){super($,"number","PgDoublePrecision")}build($){return new FK($,this.config)}}class FK extends i{static[A]="PgDoublePrecision";getSQLType(){return"double precision"}mapFromDriverValue($){if(typeof $==="string")return Number.parseFloat($);return $}}function MK($){return new EK($??"")}class LK extends X${static[A]="PgInetBuilder";constructor($){super($,"string","PgInet")}build($){return new JK($,this.config)}}class JK extends i{static[A]="PgInet";getSQLType(){return"inet"}}function AK($){return new LK($??"")}class KK extends x8{static[A]="PgIntegerBuilder";constructor($){super($,"number","PgInteger")}build($){return new _K($,this.config)}}class _K extends i{static[A]="PgInteger";getSQLType(){return"integer"}mapFromDriverValue($){if(typeof $==="string")return Number.parseInt($);return $}}function A5($){return new KK($??"")}class qK extends X${static[A]="PgIntervalBuilder";constructor($,X){super($,"string","PgInterval");this.config.intervalConfig=X}build($){return new TK($,this.config)}}class TK extends i{static[A]="PgInterval";fields=this.config.intervalConfig.fields;precision=this.config.intervalConfig.precision;getSQLType(){let $=this.fields?` ${this.fields}`:"",X=this.precision?`(${this.precision})`:"";return`interval${$}${X}`}}function RK($,X={}){let{name:Y,config:z}=I$($,X);return new qK(Y,z)}class PK extends X${static[A]="PgJsonBuilder";constructor($){super($,"json","PgJson")}build($){return new u3($,this.config)}}class u3 extends i{static[A]="PgJson";constructor($,X){super($,X)}getSQLType(){return"json"}mapToDriverValue($){return JSON.stringify($)}mapFromDriverValue($){if(typeof $==="string")try{return JSON.parse($)}catch{return $}return $}}function vK($){return new PK($??"")}class CK extends X${static[A]="PgJsonbBuilder";constructor($){super($,"json","PgJsonb")}build($){return new c3($,this.config)}}class c3 extends i{static[A]="PgJsonb";constructor($,X){super($,X)}getSQLType(){return"jsonb"}mapToDriverValue($){return JSON.stringify($)}mapFromDriverValue($){if(typeof $==="string")try{return JSON.parse($)}catch{return $}return $}}function jK($){return new CK($??"")}class BK extends X${static[A]="PgLineBuilder";constructor($){super($,"array","PgLine")}build($){return new IK($,this.config)}}class IK extends i{static[A]="PgLine";getSQLType(){return"line"}mapFromDriverValue($){let[X,Y,z]=$.slice(1,-1).split(",");return[Number.parseFloat(X),Number.parseFloat(Y),Number.parseFloat(z)]}mapToDriverValue($){return`{${$[0]},${$[1]},${$[2]}}`}}class xK extends X${static[A]="PgLineABCBuilder";constructor($){super($,"json","PgLineABC")}build($){return new SK($,this.config)}}class SK extends i{static[A]="PgLineABC";getSQLType(){return"line"}mapFromDriverValue($){let[X,Y,z]=$.slice(1,-1).split(",");return{a:Number.parseFloat(X),b:Number.parseFloat(Y),c:Number.parseFloat(z)}}mapToDriverValue($){return`{${$.a},${$.b},${$.c}}`}}function kK($,X){let{name:Y,config:z}=I$($,X);if(!z?.mode||z.mode==="tuple")return new BK(Y);return new xK(Y)}class bK extends X${static[A]="PgMacaddrBuilder";constructor($){super($,"string","PgMacaddr")}build($){return new fK($,this.config)}}class fK extends i{static[A]="PgMacaddr";getSQLType(){return"macaddr"}}function hK($){return new bK($??"")}class gK extends X${static[A]="PgMacaddr8Builder";constructor($){super($,"string","PgMacaddr8")}build($){return new yK($,this.config)}}class yK extends i{static[A]="PgMacaddr8";getSQLType(){return"macaddr8"}}function mK($){return new gK($??"")}class uK extends X${static[A]="PgNumericBuilder";constructor($,X,Y){super($,"string","PgNumeric");this.config.precision=X,this.config.scale=Y}build($){return new p3($,this.config)}}class p3 extends i{static[A]="PgNumeric";precision;scale;constructor($,X){super($,X);this.precision=X.precision,this.scale=X.scale}mapFromDriverValue($){if(typeof $==="string")return $;return String($)}getSQLType(){if(this.precision!==void 0&&this.scale!==void 0)return`numeric(${this.precision}, ${this.scale})`;else if(this.precision===void 0)return"numeric";else return`numeric(${this.precision})`}}class cK extends X${static[A]="PgNumericNumberBuilder";constructor($,X,Y){super($,"number","PgNumericNumber");this.config.precision=X,this.config.scale=Y}build($){return new pK($,this.config)}}class pK extends i{static[A]="PgNumericNumber";precision;scale;constructor($,X){super($,X);this.precision=X.precision,this.scale=X.scale}mapFromDriverValue($){if(typeof $==="number")return $;return Number($)}mapToDriverValue=String;getSQLType(){if(this.precision!==void 0&&this.scale!==void 0)return`numeric(${this.precision}, ${this.scale})`;else if(this.precision===void 0)return"numeric";else return`numeric(${this.precision})`}}class dK extends X${static[A]="PgNumericBigIntBuilder";constructor($,X,Y){super($,"bigint","PgNumericBigInt");this.config.precision=X,this.config.scale=Y}build($){return new lK($,this.config)}}class lK extends i{static[A]="PgNumericBigInt";precision;scale;constructor($,X){super($,X);this.precision=X.precision,this.scale=X.scale}mapFromDriverValue=BigInt;mapToDriverValue=String;getSQLType(){if(this.precision!==void 0&&this.scale!==void 0)return`numeric(${this.precision}, ${this.scale})`;else if(this.precision===void 0)return"numeric";else return`numeric(${this.precision})`}}function iK($,X){let{name:Y,config:z}=I$($,X),G=z?.mode;return G==="number"?new cK(Y,z?.precision,z?.scale):G==="bigint"?new dK(Y,z?.precision,z?.scale):new uK(Y,z?.precision,z?.scale)}class rK extends X${static[A]="PgPointTupleBuilder";constructor($){super($,"array","PgPointTuple")}build($){return new nK($,this.config)}}class nK extends i{static[A]="PgPointTuple";getSQLType(){return"point"}mapFromDriverValue($){if(typeof $==="string"){let[X,Y]=$.slice(1,-1).split(",");return[Number.parseFloat(X),Number.parseFloat(Y)]}return[$.x,$.y]}mapToDriverValue($){return`(${$[0]},${$[1]})`}}class oK extends X${static[A]="PgPointObjectBuilder";constructor($){super($,"json","PgPointObject")}build($){return new tK($,this.config)}}class tK extends i{static[A]="PgPointObject";getSQLType(){return"point"}mapFromDriverValue($){if(typeof $==="string"){let[X,Y]=$.slice(1,-1).split(",");return{x:Number.parseFloat(X),y:Number.parseFloat(Y)}}return $}mapToDriverValue($){return`(${$.x},${$.y})`}}function aK($,X){let{name:Y,config:z}=I$($,X);if(!z?.mode||z.mode==="tuple")return new rK(Y);return new oK(Y)}function Ck($){let X=[];for(let Y=0;Y<$.length;Y+=2)X.push(Number.parseInt($.slice(Y,Y+2),16));return new Uint8Array(X)}function sK($,X){let Y=new ArrayBuffer(8),z=new DataView(Y);for(let G=0;G<8;G++)z.setUint8(G,$[X+G]);return z.getFloat64(0,!0)}function fV($){let X=Ck($),Y=0,z=X[Y];Y+=1;let G=new DataView(X.buffer),U=G.getUint32(Y,z===1);Y+=4;let W;if(U&536870912)W=G.getUint32(Y,z===1),Y+=4;if((U&65535)===1){let Q=sK(X,Y);Y+=8;let Z=sK(X,Y);return Y+=8,[Q,Z]}throw new Error("Unsupported geometry type")}class eK extends X${static[A]="PgGeometryBuilder";constructor($){super($,"array","PgGeometry")}build($){return new $_($,this.config)}}class $_ extends i{static[A]="PgGeometry";getSQLType(){return"geometry(point)"}mapFromDriverValue($){return fV($)}mapToDriverValue($){return`point(${$[0]} ${$[1]})`}}class X_ extends X${static[A]="PgGeometryObjectBuilder";constructor($){super($,"json","PgGeometryObject")}build($){return new Y_($,this.config)}}class Y_ extends i{static[A]="PgGeometryObject";getSQLType(){return"geometry(point)"}mapFromDriverValue($){let X=fV($);return{x:X[0],y:X[1]}}mapToDriverValue($){return`point(${$.x} ${$.y})`}}function G_($,X){let{name:Y,config:z}=I$($,X);if(!z?.mode||z.mode==="tuple")return new eK(Y);return new X_(Y)}class z_ extends X${static[A]="PgRealBuilder";constructor($,X){super($,"number","PgReal");this.config.length=X}build($){return new U_($,this.config)}}class U_ extends i{static[A]="PgReal";constructor($,X){super($,X)}getSQLType(){return"real"}mapFromDriverValue=($)=>{if(typeof $==="string")return Number.parseFloat($);return $}}function W_($){return new z_($??"")}class Q_ extends X${static[A]="PgSerialBuilder";constructor($){super($,"number","PgSerial");this.config.hasDefault=!0,this.config.notNull=!0}build($){return new Z_($,this.config)}}class Z_ extends i{static[A]="PgSerial";getSQLType(){return"serial"}}function H_($){return new Q_($??"")}class O_ extends x8{static[A]="PgSmallIntBuilder";constructor($){super($,"number","PgSmallInt")}build($){return new w_($,this.config)}}class w_ extends i{static[A]="PgSmallInt";getSQLType(){return"smallint"}mapFromDriverValue=($)=>{if(typeof $==="string")return Number($);return $}}function V_($){return new O_($??"")}class D_ extends X${static[A]="PgSmallSerialBuilder";constructor($){super($,"number","PgSmallSerial");this.config.hasDefault=!0,this.config.notNull=!0}build($){return new N_($,this.config)}}class N_ extends i{static[A]="PgSmallSerial";getSQLType(){return"smallserial"}}function E_($){return new D_($??"")}class F_ extends X${static[A]="PgTextBuilder";constructor($,X){super($,"string","PgText");this.config.enumValues=X.enum}build($){return new M_($,this.config)}}class M_ extends i{static[A]="PgText";enumValues=this.config.enumValues;getSQLType(){return"text"}}function L_($,X={}){let{name:Y,config:z}=I$($,X);return new F_(Y,z)}class J_ extends r0{constructor($,X,Y){super($,"string","PgTime");this.withTimezone=X,this.precision=Y,this.config.withTimezone=X,this.config.precision=Y}static[A]="PgTimeBuilder";build($){return new d3($,this.config)}}class d3 extends i{static[A]="PgTime";withTimezone;precision;constructor($,X){super($,X);this.withTimezone=X.withTimezone,this.precision=X.precision}getSQLType(){return`time${this.precision===void 0?"":`(${this.precision})`}${this.withTimezone?" with time zone":""}`}}function A_($,X={}){let{name:Y,config:z}=I$($,X);return new J_(Y,z.withTimezone??!1,z.precision)}class K_ extends r0{static[A]="PgTimestampBuilder";constructor($,X,Y){super($,"date","PgTimestamp");this.config.withTimezone=X,this.config.precision=Y}build($){return new l3($,this.config)}}class l3 extends i{static[A]="PgTimestamp";withTimezone;precision;constructor($,X){super($,X);this.withTimezone=X.withTimezone,this.precision=X.precision}getSQLType(){return`timestamp${this.precision===void 0?"":` (${this.precision})`}${this.withTimezone?" with time zone":""}`}mapFromDriverValue=($)=>{return new Date(this.withTimezone?$:$+"+0000")};mapToDriverValue=($)=>{return $.toISOString()}}class __ extends r0{static[A]="PgTimestampStringBuilder";constructor($,X,Y){super($,"string","PgTimestampString");this.config.withTimezone=X,this.config.precision=Y}build($){return new i3($,this.config)}}class i3 extends i{static[A]="PgTimestampString";withTimezone;precision;constructor($,X){super($,X);this.withTimezone=X.withTimezone,this.precision=X.precision}getSQLType(){return`timestamp${this.precision===void 0?"":`(${this.precision})`}${this.withTimezone?" with time zone":""}`}}function q_($,X={}){let{name:Y,config:z}=I$($,X);if(z?.mode==="string")return new __(Y,z.withTimezone??!1,z.precision);return new K_(Y,z?.withTimezone??!1,z?.precision)}class T_ extends X${static[A]="PgUUIDBuilder";constructor($){super($,"string","PgUUID")}defaultRandom(){return this.default(T`gen_random_uuid()`)}build($){return new r3($,this.config)}}class r3 extends i{static[A]="PgUUID";getSQLType(){return"uuid"}}function v1($){return new T_($??"")}class R_ extends X${static[A]="PgVarcharBuilder";constructor($,X){super($,"string","PgVarchar");this.config.length=X.length,this.config.enumValues=X.enum}build($){return new P_($,this.config)}}class P_ extends i{static[A]="PgVarchar";length=this.config.length;enumValues=this.config.enumValues;getSQLType(){return this.length===void 0?"varchar":`varchar(${this.length})`}}function O4($,X={}){let{name:Y,config:z}=I$($,X);return new R_(Y,z)}class v_ extends X${static[A]="PgBinaryVectorBuilder";constructor($,X){super($,"string","PgBinaryVector");this.config.dimensions=X.dimensions}build($){return new C_($,this.config)}}class C_ extends i{static[A]="PgBinaryVector";dimensions=this.config.dimensions;getSQLType(){return`bit(${this.dimensions})`}}function j_($,X){let{name:Y,config:z}=I$($,X);return new v_(Y,z)}class B_ extends X${static[A]="PgHalfVectorBuilder";constructor($,X){super($,"array","PgHalfVector");this.config.dimensions=X.dimensions}build($){return new I_($,this.config)}}class I_ extends i{static[A]="PgHalfVector";dimensions=this.config.dimensions;getSQLType(){return`halfvec(${this.dimensions})`}mapToDriverValue($){return JSON.stringify($)}mapFromDriverValue($){return $.slice(1,-1).split(",").map((X)=>Number.parseFloat(X))}}function x_($,X){let{name:Y,config:z}=I$($,X);return new B_(Y,z)}class S_ extends X${static[A]="PgSparseVectorBuilder";constructor($,X){super($,"string","PgSparseVector");this.config.dimensions=X.dimensions}build($){return new k_($,this.config)}}class k_ extends i{static[A]="PgSparseVector";dimensions=this.config.dimensions;getSQLType(){return`sparsevec(${this.dimensions})`}}function b_($,X){let{name:Y,config:z}=I$($,X);return new S_(Y,z)}class f_ extends X${static[A]="PgVectorBuilder";constructor($,X){super($,"array","PgVector");this.config.dimensions=X.dimensions}build($){return new h_($,this.config)}}class h_ extends i{static[A]="PgVector";dimensions=this.config.dimensions;getSQLType(){return`vector(${this.dimensions})`}mapToDriverValue($){return JSON.stringify($)}mapFromDriverValue($){return $.slice(1,-1).split(",").map((X)=>Number.parseFloat(X))}}function g_($,X){let{name:Y,config:z}=I$($,X);return new f_(Y,z)}function y_(){return{bigint:oA,bigserial:$K,boolean:J5,char:UK,cidr:ZK,customType:wK,date:NK,doublePrecision:MK,inet:AK,integer:A5,interval:RK,json:vK,jsonb:jK,line:kK,macaddr:hK,macaddr8:mK,numeric:iK,point:aK,geometry:G_,real:W_,serial:H_,smallint:V_,smallserial:E_,text:L_,time:A_,timestamp:q_,uuid:v1,varchar:O4,bit:j_,halfvec:x_,sparsevec:b_,vector:g_}}var hV=Symbol.for("drizzle:PgInlineForeignKeys"),m_=Symbol.for("drizzle:EnableRLS");class m6 extends o{static[A]="PgTable";static Symbol=Object.assign({},o.Symbol,{InlineForeignKeys:hV,EnableRLS:m_});[hV]=[];[m_]=!1;[o.Symbol.ExtraConfigBuilder]=void 0;[o.Symbol.ExtraConfigColumns]={}}function jk($,X,Y,z,G=$){let U=new m6($,z,G),W=typeof X==="function"?X(y_()):X,Q=Object.fromEntries(Object.entries(W).map(([O,w])=>{let V=w;V.setName(O);let D=V.build(U);return U[hV].push(...V.buildForeignKeys(D,U)),[O,D]})),Z=Object.fromEntries(Object.entries(W).map(([O,w])=>{let V=w;V.setName(O);let D=V.buildExtraConfigColumn(U);return[O,D]})),H=Object.assign(U,Q);if(H[o.Symbol.Columns]=Q,H[o.Symbol.ExtraConfigColumns]=Z,Y)H[m6.Symbol.ExtraConfigBuilder]=Y;return Object.assign(H,{enableRLS:()=>{return H[m6.Symbol.EnableRLS]=!0,H}})}var S8=($,X,Y)=>{return jk($,X,Y,void 0)};function u_(...$){if($[0].columns)return new K5($[0].columns,$[0].name);return new K5($)}class K5{static[A]="PgPrimaryKeyBuilder";columns;name;constructor($,X){this.columns=$,this.name=X}build($){return new c_($,this.columns,this.name)}}class c_{constructor($,X,Y){this.table=$,this.columns=X,this.name=Y}static[A]="PgPrimaryKey";columns;name;getName(){return this.name??`${this.table[m6.Symbol.Name]}_${this.columns.map(($)=>$.name).join("_")}_pk`}}function t4($,X){if(hA(X)&&!BV($)&&!b($,F1)&&!b($,I8)&&!b($,r$)&&!b($,o)&&!b($,o4))return new F1($,X);return $}var n3=($,X)=>{return T`${$} = ${t4(X,$)}`},p_=($,X)=>{return T`${$} <> ${t4(X,$)}`};function _5(...$){let X=$.filter((Y)=>Y!==void 0);if(X.length===0)return;if(X.length===1)return new e(X);return new e([new y6("("),T.join(X,new y6(" and ")),new y6(")")])}function d_(...$){let X=$.filter((Y)=>Y!==void 0);if(X.length===0)return;if(X.length===1)return new e(X);return new e([new y6("("),T.join(X,new y6(" or ")),new y6(")")])}function l_($){return T`not ${$}`}var o3=($,X)=>{return T`${$} > ${t4(X,$)}`},i_=($,X)=>{return T`${$} >= ${t4(X,$)}`},r_=($,X)=>{return T`${$} < ${t4(X,$)}`},n_=($,X)=>{return T`${$} <= ${t4(X,$)}`};function o_($,X){if(Array.isArray(X)){if(X.length===0)return T`false`;return T`${$} in ${X.map((Y)=>t4(Y,$))}`}return T`${$} in ${t4(X,$)}`}function t_($,X){if(Array.isArray(X)){if(X.length===0)return T`true`;return T`${$} not in ${X.map((Y)=>t4(Y,$))}`}return T`${$} not in ${t4(X,$)}`}function a_($){return T`${$} is null`}function s_($){return T`${$} is not null`}function e_($){return T`exists ${$}`}function $q($){return T`not exists ${$}`}function Xq($,X,Y){return T`${$} between ${t4(X,$)} and ${t4(Y,$)}`}function Yq($,X,Y){return T`${$} not between ${t4(X,$)} and ${t4(Y,$)}`}function Gq($,X){return T`${$} like ${X}`}function zq($,X){return T`${$} not like ${X}`}function Uq($,X){return T`${$} ilike ${X}`}function Wq($,X){return T`${$} not ilike ${X}`}function Qq($){return T`${$} asc`}function Zq($){return T`${$} desc`}class gV{constructor($,X,Y){this.sourceTable=$,this.referencedTable=X,this.relationName=Y,this.referencedTableName=X[o.Symbol.Name]}static[A]="Relation";referencedTableName;fieldName}class Hq{constructor($,X){this.table=$,this.config=X}static[A]="Relations"}class k8 extends gV{constructor($,X,Y,z){super($,X,Y?.relationName);this.config=Y,this.isNullable=z}static[A]="One";withFieldName($){let X=new k8(this.sourceTable,this.referencedTable,this.config,this.isNullable);return X.fieldName=$,X}}class q5 extends gV{constructor($,X,Y){super($,X,Y?.relationName);this.config=Y}static[A]="Many";withFieldName($){let X=new q5(this.sourceTable,this.referencedTable,this.config);return X.fieldName=$,X}}function Oq(){return{and:_5,between:Xq,eq:n3,exists:e_,gt:o3,gte:i_,ilike:Uq,inArray:o_,isNull:a_,isNotNull:s_,like:Gq,lt:r_,lte:n_,ne:p_,not:l_,notBetween:Yq,notExists:$q,notLike:zq,notIlike:Wq,notInArray:t_,or:d_,sql:T}}function wq(){return{sql:T,asc:Qq,desc:Zq}}function Vq($,X){if(Object.keys($).length===1&&"default"in $&&!b($.default,o))$=$.default;let Y={},z={},G={};for(let[U,W]of Object.entries($))if(b(W,o)){let Q=kX(W),Z=z[Q];Y[Q]=U,G[U]={tsName:U,dbName:W[o.Symbol.Name],schema:W[o.Symbol.Schema],columns:W[o.Symbol.Columns],relations:Z?.relations??{},primaryKey:Z?.primaryKey??[]};for(let O of Object.values(W[o.Symbol.Columns]))if(O.primary)G[U].primaryKey.push(O);let H=W[o.Symbol.ExtraConfigBuilder]?.(W[o.Symbol.ExtraConfigColumns]);if(H){for(let O of Object.values(H))if(b(O,K5))G[U].primaryKey.push(...O.columns)}}else if(b(W,Hq)){let Q=kX(W.table),Z=Y[Q],H=W.config(X(W.table)),O;for(let[w,V]of Object.entries(H))if(Z){let D=G[Z];if(D.relations[w]=V,O)D.primaryKey.push(...O)}else{if(!(Q in z))z[Q]={relations:{},primaryKey:O};z[Q].relations[w]=V}}return{tables:G,tableNamesMap:Y}}function Bk($){return function X(Y,z){return new k8($,Y,z,z?.fields.reduce((G,U)=>G&&U.notNull,!0)??!1)}}function Ik($){return function X(Y,z){return new q5($,Y,z)}}function Dq($,X,Y){if(b(Y,k8)&&Y.config)return{fields:Y.config.fields,references:Y.config.references};let z=X[kX(Y.referencedTable)];if(!z)throw new Error(`Table "${Y.referencedTable[o.Symbol.Name]}" not found in schema`);let G=$[z];if(!G)throw new Error(`Table "${z}" not found in schema`);let U=Y.sourceTable,W=X[kX(U)];if(!W)throw new Error(`Table "${U[o.Symbol.Name]}" not found in schema`);let Q=[];for(let Z of Object.values(G.relations))if(Y.relationName&&Y!==Z&&Z.relationName===Y.relationName||!Y.relationName&&Z.referencedTable===Y.sourceTable)Q.push(Z);if(Q.length>1)throw Y.relationName?new Error(`There are multiple relations with name "${Y.relationName}" in table "${z}"`):new Error(`There are multiple relations between "${z}" and "${Y.sourceTable[o.Symbol.Name]}". Please specify relation name`);if(Q[0]&&b(Q[0],k8)&&Q[0].config)return{fields:Q[0].config.references,references:Q[0].config.fields};throw new Error(`There is not enough information to infer relation "${W}.${Y.fieldName}"`)}function Nq($){return{one:Bk($),many:Ik($)}}function t3($,X,Y,z,G=(U)=>U){let U={};for(let[W,Q]of z.entries())if(Q.isJson){let Z=X.relations[Q.tsKey],H=Y[W],O=typeof H==="string"?JSON.parse(H):H;U[Q.tsKey]=b(Z,k8)?O&&t3($,$[Q.relationTableTsKey],O,Q.selection,G):O.map((w)=>t3($,$[Q.relationTableTsKey],w,Q.selection,G))}else{let Z=G(Y[W]),H=Q.field,O;if(b(H,r$))O=H;else if(b(H,e))O=H.decoder;else O=H.sql.decoder;U[Q.tsKey]=Z===null?null:O.mapFromDriverValue(Z)}return U}import Ky from"path";import Xb from"os";import Yb from"fs";var a3=new Map,yV=new Map,mV=Symbol("OriginError"),Z2={};class C1 extends Promise{constructor($,X,Y,z,G={}){let U,W;super((Q,Z)=>{U=Q,W=Z});this.tagged=Array.isArray($.raw),this.strings=$,this.args=X,this.handler=Y,this.canceller=z,this.options=G,this.state=null,this.statement=null,this.resolve=(Q)=>(this.active=!1,U(Q)),this.reject=(Q)=>(this.active=!1,W(Q)),this.active=!1,this.cancelled=null,this.executed=!1,this.signature="",this[mV]=this.handler.debug?new Error:this.tagged&&xk(this.strings)}get origin(){return(this.handler.debug?this[mV].stack:this.tagged&&yV.has(this.strings)?yV.get(this.strings):yV.set(this.strings,this[mV].stack).get(this.strings))||""}static get[Symbol.species](){return Promise}cancel(){return this.canceller&&(this.canceller(this),this.canceller=null)}simple(){return this.options.simple=!0,this.options.prepare=!1,this}async readable(){return this.simple(),this.streaming=!0,this}async writable(){return this.simple(),this.streaming=!0,this}cursor($=1,X){if(this.options.simple=!1,typeof $==="function")X=$,$=1;if(this.cursorRows=$,typeof X==="function")return this.cursorFn=X,this;let Y;return{[Symbol.asyncIterator]:()=>({next:()=>{if(this.executed&&!this.active)return{done:!0};Y&&Y();let z=new Promise((G,U)=>{this.cursorFn=(W)=>{return G({value:W,done:!1}),new Promise((Q)=>Y=Q)},this.resolve=()=>(this.active=!1,G({done:!0})),this.reject=(W)=>(this.active=!1,U(W))});return this.execute(),z},return(){return Y&&Y(Z2),{done:!0}}})}}describe(){return this.options.simple=!1,this.onlyDescribe=this.options.prepare=!0,this}stream(){throw new Error(".stream has been renamed to .forEach")}forEach($){return this.forEachFn=$,this.handle(),this}raw(){return this.isRaw=!0,this}values(){return this.isRaw="values",this}async handle(){!this.executed&&(this.executed=!0)&&await 1&&this.handler(this)}execute(){return this.handle(),this}then(){return this.handle(),super.then.apply(this,arguments)}catch(){return this.handle(),super.catch.apply(this,arguments)}finally(){return this.handle(),super.finally.apply(this,arguments)}}function xk($){if(a3.has($))return a3.get($);let X=Error.stackTraceLimit;return Error.stackTraceLimit=4,a3.set($,new Error),Error.stackTraceLimit=X,a3.get($)}class H2 extends Error{constructor($){super($.message);this.name=this.constructor.name,Object.assign(this,$)}}var C6={connection:Eq,postgres:Fq,generic:Mq,notSupported:Lq};function Eq($,X,Y){let{host:z,port:G}=Y||X,U=Object.assign(new Error("write "+$+" "+(X.path||z+":"+G)),{code:$,errno:$,address:X.path||z},X.path?{}:{port:G});return Error.captureStackTrace(U,Eq),U}function Fq($){let X=new H2($);return Error.captureStackTrace(X,Fq),X}function Mq($,X){let Y=Object.assign(new Error($+": "+X),{code:$});return Error.captureStackTrace(Y,Mq),Y}function Lq($){let X=Object.assign(new Error($+" (B) is not supported"),{code:"MESSAGE_NOT_SUPPORTED",name:$});return Error.captureStackTrace(X,Lq),X}var Sk={string:{to:25,from:null,serialize:($)=>""+$},number:{to:0,from:[21,23,26,700,701],serialize:($)=>""+$,parse:($)=>+$},json:{to:114,from:[114,3802],serialize:($)=>JSON.stringify($),parse:($)=>JSON.parse($)},boolean:{to:16,from:16,serialize:($)=>$===!0?"t":"f",parse:($)=>$==="t"},date:{to:1184,from:[1082,1114,1184],serialize:($)=>($ instanceof Date?$:new Date($)).toISOString(),parse:($)=>new Date($)},bytea:{to:17,from:17,serialize:($)=>"\\x"+Buffer.from($).toString("hex"),parse:($)=>Buffer.from($.slice(2),"hex")}};class $U{then(){uV()}catch(){uV()}finally(){uV()}}class v5 extends $U{constructor($){super();this.value=GU($)}}class N0 extends $U{constructor($,X,Y){super();this.value=$,this.type=X,this.array=Y}}class XU extends $U{constructor($,X){super();this.first=$,this.rest=X}build($,X,Y,z){let G=kk.map(([U,W])=>({fn:W,i:$.search(U)})).sort((U,W)=>U.i-W.i).pop();return G.i===-1?iV(this.first,z):G.fn(this.first,this.rest,X,Y,z)}}function YU($,X,Y,z){let G=$ instanceof N0?$.value:$;if(G===void 0){if($ instanceof N0?$.value=z.transform.undefined:G=$=z.transform.undefined,G===void 0)throw C6.generic("UNDEFINED_VALUE","Undefined values are not allowed")}return"$"+Y.push($ instanceof N0?(X.push($.value),$.array?$.array[$.type||e3($.value)]||$.type||_q($.value):$.type):(X.push($),e3($)))}var Aq=Tq(Sk);function dV($,X,Y,z,G,U){for(let W=1;W<$.strings.length;W++)X+=lV(X,Y,z,G,U)+$.strings[W],Y=$.args[W];return X}function lV($,X,Y,z,G){return X instanceof XU?X.build($,Y,z,G):X instanceof C1?pV(X,Y,z,G):X instanceof v5?X.value:X&&X[0]instanceof C1?X.reduce((U,W)=>U+" "+pV(W,Y,z,G),""):YU(X,Y,z,G)}function pV($,X,Y,z){return $.fragment=!0,dV($,$.strings[0],$.args[0],X,Y,z)}function Kq($,X,Y,z,G){return $.map((U)=>"("+z.map((W)=>lV("values",U[W],X,Y,G)).join(",")+")").join(",")}function Jq($,X,Y,z,G){let U=Array.isArray($[0]),W=X.length?X.flat():Object.keys(U?$[0]:$);return Kq(U?$:[$],Y,z,W,G)}function s3($,X,Y,z,G){if(typeof $==="string"&&($=[$].concat(X)),Array.isArray($))return iV($,G);let U;return(X.length?X.flat():Object.keys($)).map((Q)=>{return U=$[Q],(U instanceof C1?pV(U,Y,z,G):U instanceof v5?U.value:YU(U,Y,z,G))+" as "+GU(G.transform.column.to?G.transform.column.to(Q):Q)}).join(",")}var kk=Object.entries({values:Jq,in:(...$)=>{let X=Jq(...$);return X==="()"?"(null)":X},select:s3,as:s3,returning:s3,"\\(":s3,update($,X,Y,z,G){return(X.length?X.flat():Object.keys($)).map((U)=>GU(G.transform.column.to?G.transform.column.to(U):U)+"="+lV("values",$[U],Y,z,G))},insert($,X,Y,z,G){let U=X.length?X.flat():Object.keys(Array.isArray($)?$[0]:$);return"("+iV(U,G)+")values"+Kq(Array.isArray($)?$:[$],Y,z,U,G)}}).map(([$,X])=>[new RegExp("((?:^|[\\s(])"+$+"(?:$|[\\s(]))(?![\\s\\S]*\\1)","i"),X]);function uV(){throw C6.generic("NOT_TAGGED_CALL","Query not called as a tagged template literal")}var{serializers:bk,parsers:fk}=Aq;function _q($){if(Array.isArray($))return _q($[0]);return typeof $==="string"?1009:0}var qq=function($){let X=Tq($||{});return{serializers:Object.assign({},bk,X.serializers),parsers:Object.assign({},fk,X.parsers)}};function Tq($){return Object.keys($).reduce((X,Y)=>{if($[Y].from&&[].concat($[Y].from).forEach((z)=>X.parsers[z]=$[Y].parse),$[Y].serialize)X.serializers[$[Y].to]=$[Y].serialize,$[Y].from&&[].concat($[Y].from).forEach((z)=>X.serializers[z]=$[Y].serialize);return X},{parsers:{},serializers:{}})}function iV($,{transform:{column:X}}){return $.map((Y)=>GU(X.to?X.to(Y):Y)).join(",")}var GU=function $(X){return'"'+X.replace(/"/g,'""').replace(/\./g,'"."')+'"'},e3=function $(X){return X instanceof N0?X.type:X instanceof Date?1184:X instanceof Uint8Array?17:X===!0||X===!1?16:typeof X==="bigint"?20:Array.isArray(X)?$(X[0]):0},hk=/\\/g,gk=/"/g;function yk($){return $.replace(hk,"\\\\").replace(gk,"\\\"")}var Rq=function $(X,Y,z,G){if(Array.isArray(X)===!1)return X;if(!X.length)return"{}";let U=X[0],W=G===1020?";":",";if(Array.isArray(U)&&!U.type)return"{"+X.map((Q)=>$(Q,Y,z,G)).join(W)+"}";return"{"+X.map((Q)=>{if(Q===void 0){if(Q=z.transform.undefined,Q===void 0)throw C6.generic("UNDEFINED_VALUE","Undefined values are not allowed")}return Q===null?"null":'"'+yk(Y?Y(Q.type?Q.value:Q):""+Q)+'"'}).join(W)+"}"},cV={i:0,char:null,str:"",quoted:!1,last:0},Pq=function $(X,Y,z){return cV.i=cV.last=0,vq(cV,X,Y,z)};function vq($,X,Y,z){let G=[],U=z===1020?";":",";for(;$.i<X.length;$.i++){if($.char=X[$.i],$.quoted)if($.char==="\\")$.str+=X[++$.i];else if($.char==='"')G.push(Y?Y($.str):$.str),$.str="",$.quoted=X[$.i+1]==='"',$.last=$.i+2;else $.str+=$.char;else if($.char==='"')$.quoted=!0;else if($.char==="{")$.last=++$.i,G.push(vq($,X,Y,z));else if($.char==="}"){$.quoted=!1,$.last<$.i&&G.push(Y?Y(X.slice($.last,$.i)):X.slice($.last,$.i)),$.last=$.i+1;break}else if($.char===U&&$.p!=="}"&&$.p!=='"')G.push(Y?Y(X.slice($.last,$.i)):X.slice($.last,$.i)),$.last=$.i+1;$.p=$.char}return $.last<$.i&&G.push(Y?Y(X.slice($.last,$.i+1)):X.slice($.last,$.i+1)),G}var bX=($)=>{let X=$[0];for(let Y=1;Y<$.length;Y++)X+=$[Y]==="_"?$[++Y].toUpperCase():$[Y];return X},fX=($)=>{let X=$[0].toUpperCase();for(let Y=1;Y<$.length;Y++)X+=$[Y]==="_"?$[++Y].toUpperCase():$[Y];return X},hX=($)=>$.replace(/_/g,"-"),T5=($)=>$.replace(/([A-Z])/g,"_$1").toLowerCase(),R5=($)=>($.slice(0,1)+$.slice(1).replace(/([A-Z])/g,"_$1")).toLowerCase(),P5=($)=>$.replace(/-/g,"_");function rV($){return function X(Y,z){return typeof Y==="object"&&Y!==null&&(z.type===114||z.type===3802)?Array.isArray(Y)?Y.map((G)=>X(G,z)):Object.entries(Y).reduce((G,[U,W])=>Object.assign(G,{[$(U)]:X(W,z)}),{}):Y}}bX.column={from:bX};bX.value={from:rV(bX)};T5.column={to:T5};var nV={...bX};nV.column.to=T5;fX.column={from:fX};fX.value={from:rV(fX)};R5.column={to:R5};var oV={...fX};oV.column.to=R5;hX.column={from:hX};hX.value={from:rV(hX)};P5.column={to:P5};var tV={...hX};tV.column.to=P5;import Cq from"net";import pk from"tls";import C5 from"crypto";import aV from"stream";import{performance as jq}from"perf_hooks";class gX extends Array{constructor(){super();Object.defineProperties(this,{count:{value:null,writable:!0},state:{value:null,writable:!0},command:{value:null,writable:!0},columns:{value:null,writable:!0},statement:{value:null,writable:!0}})}static get[Symbol.species](){return Array}}var M1=mk;function mk($=[]){let X=$.slice(),Y=0;return{get length(){return X.length-Y},remove:(z)=>{let G=X.indexOf(z);return G===-1?null:(X.splice(G,1),z)},push:(z)=>(X.push(z),z),shift:()=>{let z=X[Y++];if(Y===X.length)Y=0,X=[];else X[Y-1]=void 0;return z}}}var w4=Buffer.allocUnsafe(256),uk="BCcDdEFfHPpQSX".split("").reduce(($,X)=>{let Y=X.charCodeAt(0);return $[X]=()=>{return w4[0]=Y,l$.i=5,l$},$},{}),l$=Object.assign(ck,uk,{N:String.fromCharCode(0),i:0,inc($){return l$.i+=$,l$},str($){let X=Buffer.byteLength($);return zU(X),l$.i+=w4.write($,l$.i,X,"utf8"),l$},i16($){return zU(2),w4.writeUInt16BE($,l$.i),l$.i+=2,l$},i32($,X){if(X||X===0)return w4.writeUInt32BE($,X),l$;return zU(4),w4.writeUInt32BE($,l$.i),l$.i+=4,l$},z($){return zU($),w4.fill(0,l$.i,l$.i+$),l$.i+=$,l$},raw($){return w4=Buffer.concat([w4.subarray(0,l$.i),$]),l$.i=w4.length,l$},end($=1){w4.writeUInt32BE(l$.i-$,$);let X=w4.subarray(0,l$.i);return l$.i=0,w4=Buffer.allocUnsafe(256),X}}),H$=l$;function zU($){if(w4.length-l$.i<$){let X=w4,Y=X.length;w4=Buffer.allocUnsafe(Y+(Y>>1)+$),X.copy(w4)}}function ck(){return l$.i=0,l$}var $D=xq,dk=1,b8=H$().S().end(),Bq=H$().H().end(),lk=H$().i32(8).i32(80877103).end(8),ik=Buffer.concat([H$().E().str(H$.N).i32(0).end(),b8]),rk=H$().D().str("S").str(H$.N).end(),O2=()=>{},nk=new Set(["FetchPreparedStatement","RevalidateCachedQuery","transformAssignedExpr"]),ok={83:"severity_local",86:"severity",67:"code",77:"message",68:"detail",72:"hint",80:"position",112:"internal_position",113:"internal_query",87:"where",115:"schema_name",116:"table_name",99:"column_name",100:"data type_name",110:"constraint_name",70:"file",76:"line",82:"routine"};function xq($,X={},{onopen:Y=O2,onend:z=O2,onclose:G=O2}={}){let{ssl:U,max:W,user:Q,host:Z,port:H,database:O,parsers:w,transform:V,onnotice:D,onnotify:N,onparameter:F,max_pipeline:L,keep_alive:K,backoff:q,target_session_attrs:R}=$,_=M1(),v=dk++,x={pid:null,secret:null},S=eV(nU,$.idle_timeout),m=eV(nU,$.max_lifetime),$$=eV(Jv,$.connect_timeout),I=null,Y$,l=new gX,U$=Buffer.alloc(0),K$=$.fetch_types,b$={},K6={},Y4=Math.random().toString(36).slice(2),u=1,Q$=0,f$=0,H6=0,B6=0,q$=0,c$=0,T6=0,O6=null,G6=null,G4=!1,t$=null,S1=null,n6=null,W8=null,I6=null,z6=null,k1=null,o1=null,a=null,S2=null,z4={queue:X.closed,idleTimer:S,connect(J){n6=J,iN()},terminate:b2,execute:k2,cancel:Ev,end:nU,count:0,id:v};return X.closed&&X.closed.push(z4),z4;async function Nv(){let J;try{J=$.socket?await Promise.resolve($.socket($)):new Cq.Socket}catch(j){nX(j);return}return J.on("error",nX),J.on("close",rN),J.on("drain",dN),J}async function Ev({pid:J,secret:j},w$,h$){try{Y$=H$().i32(16).i32(80877102).i32(J).i32(j).end(16),await lN(),I.once("error",h$),I.once("close",w$)}catch(M6){h$(M6)}}function k2(J){if(G4)return w7(J,C6.connection("CONNECTION_DESTROYED",$));if(J.cancelled)return;try{return J.state=x,a?_.push(J):(a=J,a.active=!0),Lv(J),o6(Fv(J))&&!J.describeFirst&&!J.cursorFn&&_.length<L&&(!J.options.onexecute||J.options.onexecute(z4))}catch(j){return _.length===0&&o6(b8),t1(j),!0}}function Fv(J){if(J.parameters.length>=65534)throw C6.generic("MAX_PARAMETERS_EXCEEDED","Max number of parameters (65534) exceeded");return J.options.simple?H$().Q().str(J.statement.string+H$.N).end():J.describeFirst?Buffer.concat([uN(J),Bq]):J.prepare?J.prepared?O7(J):Buffer.concat([uN(J),O7(J)]):Mv(J)}function uN(J){return Buffer.concat([oN(J.statement.string,J.parameters,J.statement.types,J.statement.name),GC("S",J.statement.name)])}function O7(J){return Buffer.concat([YC(J.parameters,J.statement.types,J.statement.name,J.cursorName),J.cursorFn?tN("",J.cursorRows):ik])}function Mv(J){return Buffer.concat([oN(J.statement.string,J.parameters,J.statement.types),rk,O7(J)])}function Lv(J){let j=[],w$=[],h$=dV(J,J.strings[0],J.args[0],j,w$,$);!J.tagged&&J.args.forEach((M6)=>YU(M6,j,w$,$)),J.prepare=$.prepare&&("prepare"in J.options?J.options.prepare:!0),J.string=h$,J.signature=J.prepare&&w$+h$,J.onlyDescribe&&delete K6[J.signature],J.parameters=J.parameters||j,J.prepared=J.prepare&&J.signature in K6,J.describeFirst=J.onlyDescribe||j.length&&!J.prepared,J.statement=J.prepared?K6[J.signature]:{string:h$,types:w$,name:J.prepare?Y4+u++:""},typeof $.debug==="function"&&$.debug(v,h$,j,w$)}function o6(J,j){if(z6=z6?Buffer.concat([z6,J]):Buffer.from(J),j||z6.length>=1024)return cN(j);return G6===null&&(G6=setImmediate(cN)),!0}function cN(J){let j=I.write(z6,J);return G6!==null&&clearImmediate(G6),z6=G6=null,j}function Jv(){t1(C6.connection("CONNECT_TIMEOUT",$,I)),I.destroy()}async function pN(){if(o6(lk),!await new Promise((j)=>I.once("data",(w$)=>j(w$[0]===83)))&&U==="prefer")return rX();I.removeAllListeners(),I=pk.connect({socket:I,servername:Cq.isIP(I.host)?void 0:I.host,...U==="require"||U==="allow"||U==="prefer"?{rejectUnauthorized:!1}:U==="verify-full"?{}:typeof U==="object"?U:{}}),I.on("secureConnect",rX),I.on("error",nX),I.on("close",rN),I.on("drain",dN)}function dN(){!a&&Y(z4)}function rU(J){if(t$){if(t$.push(J),f$-=J.length,f$>0)return}U$=t$?Buffer.concat(t$,q$-f$):U$.length===0?J:Buffer.concat([U$,J],U$.length+J.length);while(U$.length>4){if(q$=U$.readUInt32BE(1),q$>=U$.length){f$=q$-U$.length,t$=[U$];break}try{Av(U$.subarray(0,q$+1))}catch(j){a&&(a.cursorFn||a.describeFirst)&&o6(b8),t1(j)}U$=U$.subarray(q$+1),f$=0,t$=null}}async function lN(){if(G4=!1,b$={},I||(I=await Nv()),!I)return;if($$.start(),$.socket)return U?pN():rX();if(I.on("connect",U?pN:rX),$.path)return I.connect($.path);I.ssl=U,I.connect(H[H6],Z[H6]),I.host=Z[H6],I.port=H[H6],H6=(H6+1)%H.length}function iN(){setTimeout(lN,Q$?Q$+c$-jq.now():0)}function rX(){try{K6={},K$=$.fetch_types,Y4=Math.random().toString(36).slice(2),u=1,m.start(),I.on("data",rU),K&&I.setKeepAlive&&I.setKeepAlive(!0,1000*K);let J=UC();o6(J)}catch(J){nX(J)}}function nX(J){if(z4.queue===X.connecting&&$.host[B6+1])return;t1(J);while(_.length)w7(_.shift(),J)}function t1(J){I6&&(I6.destroy(J),I6=null),a&&w7(a,J),n6&&(w7(n6,J),n6=null)}function w7(J,j){if(J.reserve)return J.reject(j);if(!j||typeof j!=="object")j=new Error(j);"query"in j||"parameters"in j||Object.defineProperties(j,{stack:{value:j.stack+J.origin.replace(/.*\n/,`
119
+ `)});return{model:$,messages:W}}var V$=1e6,DL={"gpt-4.1":{promptPricePerToken:2/V$,promptPricePerTokenCached:0.5/V$,completionPricePerToken:8/V$},"gpt-4.1-mini":{promptPricePerToken:0.4/V$,promptPricePerTokenCached:0.1/V$,completionPricePerToken:1.6/V$},"gpt-4.1-nano":{promptPricePerToken:0.1/V$,promptPricePerTokenCached:0.025/V$,completionPricePerToken:0.4/V$},"gpt-4o":{promptPricePerToken:2.5/V$,promptPricePerTokenCached:1.25/V$,completionPricePerToken:10/V$},"gpt-4o-mini":{promptPricePerToken:0.15/V$,promptPricePerTokenCached:0.075/V$,completionPricePerToken:0.6/V$},o1:{promptPricePerToken:15/V$,promptPricePerTokenCached:7.5/V$,completionPricePerToken:60/V$},"o1-mini":{promptPricePerToken:1.1/V$,promptPricePerTokenCached:0.55/V$,completionPricePerToken:4.4/V$},o3:{promptPricePerToken:10/V$,promptPricePerTokenCached:2.5/V$,completionPricePerToken:40/V$},"o3-mini":{promptPricePerToken:1.1/V$,promptPricePerTokenCached:0.55/V$,completionPricePerToken:4.4/V$},"o4-mini":{promptPricePerToken:1.1/V$,promptPricePerTokenCached:0.275/V$,completionPricePerToken:4.4/V$},"codex-mini-latest":{promptPricePerToken:1.5/V$,promptPricePerTokenCached:0.375/V$,completionPricePerToken:6/V$},"chatgpt-4o-latest":{promptPricePerToken:5/V$,promptPricePerTokenCached:5/V$,completionPricePerToken:15/V$},"gpt-4":{promptPricePerToken:30/V$,promptPricePerTokenCached:30/V$,completionPricePerToken:60/V$},"gpt-4-turbo":{promptPricePerToken:10/V$,promptPricePerTokenCached:10/V$,completionPricePerToken:30/V$},"gpt-3.5-turbo":{promptPricePerToken:0.5/V$,promptPricePerTokenCached:0.5/V$,completionPricePerToken:1.5/V$},"gpt-4-32k":{promptPricePerToken:60/V$,promptPricePerTokenCached:60/V$,completionPricePerToken:120/V$},"gpt-3.5-turbo-16k":{promptPricePerToken:3/V$,promptPricePerTokenCached:3/V$,completionPricePerToken:4/V$}};function vS($){let Y=Object.keys(DL).filter((z)=>$.startsWith(z)).sort((z,G)=>G.length-z.length)[0];if(!Y)return;return DL[Y]}function EL($,X){let Y=$.prompt_tokens,z=$.prompt_tokens_details?.cached_tokens??0,G=Y-z,U=$.completion_tokens,W=vS(X),Q=0;if(W)Q=Y*W.promptPricePerToken+G*(W.promptPricePerTokenCached??0)+U*W.completionPricePerToken;else console.warn(`No pricing facts found for model ${X}. Giving a price of 0.`);return Q}function CS($){return async function X(Y,z){let G=await $.chat.completions.create({...Y,stream:!1,response_format:{type:"json_object"}},z),U=G.choices[0].message?.content,{usage:W}=G;if(U&&W){let Q=EL(W,Y.model);return{data:JSON.parse(U),usage:W,usdPrice:Q}}if(!U&&!W)throw new Error("No content or usage found in completion");if(!U)throw new Error("No content found in completion");throw new Error("No usage found in completion")}}var NL=new Map,FL=class{usdBudget;usdMinimum;getCompletionSquirreled;getUnknownJsonFromOpenAi;getUnknownJsonFromOpenAiSquirreled;squirrel;model;client;lastUsage;logger;constructor({model:$,usdBudget:X,usdMinimum:Y,apiKey:z,cachingMode:G,cacheKey:U="openai-safegen",logger:W=console}){this.usdBudget=X,this.usdMinimum=Y,this.model=$,this.squirrel=new QM(G),this.logger=W;let Q=NL.get(z);if(!Q)Q=new _$({apiKey:z,dangerouslyAllowBrowser:!1}),NL.set(z,Q);this.client=Q,this.getCompletionSquirreled=this.squirrel.add("openai-safegen",this.client.completions.create.bind(this.client.completions)),this.getUnknownJsonFromOpenAi=CS(this.client),this.getUnknownJsonFromOpenAiSquirreled=this.squirrel.add(U,this.getUnknownJsonFromOpenAi),this.from=cF(async(...Z)=>{if(this.usdBudget<this.usdMinimum)return W?.warn("SafeGen budget exhausted"),Z[2];let H=PS($,...Z),O=Z[0],w=Z[3],{data:V,usage:D,usdPrice:N}=await this.getUnknownJsonFromOpenAiSquirreled.for(`${O.replace(/[^a-zA-Z0-9-_. ]/g,"_")}-${w.length}`).get(H);return this.lastUsage=D,this.usdBudget-=N,V},W),this.object=this.from}getCompletion=async($,X)=>{if(this.usdBudget<this.usdMinimum)return this.logger.warn("SafeGen budget exhausted"),"";let Y=await this.getCompletionSquirreled.for($).get(X),{usage:z}=Y;if(z){let G=EL(z,X.model);this.usdBudget-=G}return Y.choices[0].text.trim()};from;object;boolean($){return dF($,async(X,Y)=>{return(await this.getCompletion(Y,{model:this.model,prompt:X,max_tokens:1})).toLowerCase()})}number($,X,Y){return lF($,X,Y,async(z,G)=>this.getCompletion(G,{model:this.model,prompt:z,max_tokens:6}))}choose($,X,Y=1,z=Y){return iF($,X,Y,z,async(G,U,W)=>this.getCompletion(U,{model:this.model,prompt:G,max_tokens:W}),this.logger)}};import{exec as vy}from"child_process";class M extends Array{constructor($,X){if(super($),this.sign=X,Object.setPrototypeOf(this,M.prototype),$>M.__kMaxLength)throw new RangeError("Maximum BigInt size exceeded")}static BigInt($){var X=Math.floor,Y=Number.isFinite;if(typeof $=="number"){if($===0)return M.__zero();if(M.__isOneDigitInt($))return 0>$?M.__oneDigit(-$,!0):M.__oneDigit($,!1);if(!Y($)||X($)!==$)throw new RangeError("The number "+$+" cannot be converted to BigInt because it is not an integer");return M.__fromDouble($)}if(typeof $=="string"){let z=M.__fromString($);if(z===null)throw new SyntaxError("Cannot convert "+$+" to a BigInt");return z}if(typeof $=="boolean")return $===!0?M.__oneDigit(1,!1):M.__zero();if(typeof $=="object"){if($.constructor===M)return $;let z=M.__toPrimitive($);return M.BigInt(z)}throw new TypeError("Cannot convert "+$+" to a BigInt")}toDebugString(){let $=["BigInt["];for(let X of this)$.push((X?(X>>>0).toString(16):X)+", ");return $.push("]"),$.join("")}toString($=10){if(2>$||36<$)throw new RangeError("toString() radix argument must be between 2 and 36");return this.length===0?"0":($&$-1)==0?M.__toStringBasePowerOfTwo(this,$):M.__toStringGeneric(this,$,!1)}valueOf(){throw new Error("Convert JSBI instances to native numbers using `toNumber`.")}static toNumber($){let X=$.length;if(X===0)return 0;if(X===1){let F=$.__unsignedDigit(0);return $.sign?-F:F}let Y=$.__digit(X-1),z=M.__clz30(Y),G=30*X-z;if(1024<G)return $.sign?-1/0:1/0;let U=G-1,W=Y,Q=X-1,Z=z+3,H=Z===32?0:W<<Z;H>>>=12;let O=Z-12,w=12<=Z?0:W<<20+Z,V=20+Z;for(0<O&&0<Q&&(Q--,W=$.__digit(Q),H|=W>>>30-O,w=W<<O+2,V=O+2);0<V&&0<Q;)Q--,W=$.__digit(Q),w|=30<=V?W<<V-30:W>>>30-V,V-=30;let D=M.__decideRounding($,V,Q,W);if((D===1||D===0&&(1&w)==1)&&(w=w+1>>>0,w===0&&(H++,H>>>20!=0&&(H=0,U++,1023<U))))return $.sign?-1/0:1/0;let N=$.sign?-2147483648:0;return U=U+1023<<20,M.__kBitConversionInts[M.__kBitConversionIntHigh]=N|U|H,M.__kBitConversionInts[M.__kBitConversionIntLow]=w,M.__kBitConversionDouble[0]}static unaryMinus($){if($.length===0)return $;let X=$.__copy();return X.sign=!$.sign,X}static bitwiseNot($){return $.sign?M.__absoluteSubOne($).__trim():M.__absoluteAddOne($,!0)}static exponentiate($,X){if(X.sign)throw new RangeError("Exponent must be positive");if(X.length===0)return M.__oneDigit(1,!1);if($.length===0)return $;if($.length===1&&$.__digit(0)===1)return $.sign&&(1&X.__digit(0))==0?M.unaryMinus($):$;if(1<X.length)throw new RangeError("BigInt too big");let Y=X.__unsignedDigit(0);if(Y===1)return $;if(Y>=M.__kMaxLengthBits)throw new RangeError("BigInt too big");if($.length===1&&$.__digit(0)===2){let U=1+(0|Y/30),W=$.sign&&(1&Y)!=0,Q=new M(U,W);Q.__initializeDigits();let Z=1<<Y%30;return Q.__setDigit(U-1,Z),Q}let z=null,G=$;for((1&Y)!=0&&(z=$),Y>>=1;Y!==0;Y>>=1)G=M.multiply(G,G),(1&Y)!=0&&(z===null?z=G:z=M.multiply(z,G));return z}static multiply($,X){if($.length===0)return $;if(X.length===0)return X;let Y=$.length+X.length;30<=$.__clzmsd()+X.__clzmsd()&&Y--;let z=new M(Y,$.sign!==X.sign);z.__initializeDigits();for(let G=0;G<$.length;G++)M.__multiplyAccumulate(X,$.__digit(G),z,G);return z.__trim()}static divide($,X){if(X.length===0)throw new RangeError("Division by zero");if(0>M.__absoluteCompare($,X))return M.__zero();let Y=$.sign!==X.sign,z=X.__unsignedDigit(0),G;if(X.length===1&&32767>=z){if(z===1)return Y===$.sign?$:M.unaryMinus($);G=M.__absoluteDivSmall($,z,null)}else G=M.__absoluteDivLarge($,X,!0,!1);return G.sign=Y,G.__trim()}static remainder($,X){if(X.length===0)throw new RangeError("Division by zero");if(0>M.__absoluteCompare($,X))return $;let Y=X.__unsignedDigit(0);if(X.length===1&&32767>=Y){if(Y===1)return M.__zero();let G=M.__absoluteModSmall($,Y);return G===0?M.__zero():M.__oneDigit(G,$.sign)}let z=M.__absoluteDivLarge($,X,!1,!0);return z.sign=$.sign,z.__trim()}static add($,X){let Y=$.sign;return Y===X.sign?M.__absoluteAdd($,X,Y):0<=M.__absoluteCompare($,X)?M.__absoluteSub($,X,Y):M.__absoluteSub(X,$,!Y)}static subtract($,X){let Y=$.sign;return Y===X.sign?0<=M.__absoluteCompare($,X)?M.__absoluteSub($,X,Y):M.__absoluteSub(X,$,!Y):M.__absoluteAdd($,X,Y)}static leftShift($,X){return X.length===0||$.length===0?$:X.sign?M.__rightShiftByAbsolute($,X):M.__leftShiftByAbsolute($,X)}static signedRightShift($,X){return X.length===0||$.length===0?$:X.sign?M.__leftShiftByAbsolute($,X):M.__rightShiftByAbsolute($,X)}static unsignedRightShift(){throw new TypeError("BigInts have no unsigned right shift; use >> instead")}static lessThan($,X){return 0>M.__compareToBigInt($,X)}static lessThanOrEqual($,X){return 0>=M.__compareToBigInt($,X)}static greaterThan($,X){return 0<M.__compareToBigInt($,X)}static greaterThanOrEqual($,X){return 0<=M.__compareToBigInt($,X)}static equal($,X){if($.sign!==X.sign)return!1;if($.length!==X.length)return!1;for(let Y=0;Y<$.length;Y++)if($.__digit(Y)!==X.__digit(Y))return!1;return!0}static notEqual($,X){return!M.equal($,X)}static bitwiseAnd($,X){var Y=Math.max;if(!$.sign&&!X.sign)return M.__absoluteAnd($,X).__trim();if($.sign&&X.sign){let z=Y($.length,X.length)+1,G=M.__absoluteSubOne($,z),U=M.__absoluteSubOne(X);return G=M.__absoluteOr(G,U,G),M.__absoluteAddOne(G,!0,G).__trim()}return $.sign&&([$,X]=[X,$]),M.__absoluteAndNot($,M.__absoluteSubOne(X)).__trim()}static bitwiseXor($,X){var Y=Math.max;if(!$.sign&&!X.sign)return M.__absoluteXor($,X).__trim();if($.sign&&X.sign){let U=Y($.length,X.length),W=M.__absoluteSubOne($,U),Q=M.__absoluteSubOne(X);return M.__absoluteXor(W,Q,W).__trim()}let z=Y($.length,X.length)+1;$.sign&&([$,X]=[X,$]);let G=M.__absoluteSubOne(X,z);return G=M.__absoluteXor(G,$,G),M.__absoluteAddOne(G,!0,G).__trim()}static bitwiseOr($,X){var Y=Math.max;let z=Y($.length,X.length);if(!$.sign&&!X.sign)return M.__absoluteOr($,X).__trim();if($.sign&&X.sign){let U=M.__absoluteSubOne($,z),W=M.__absoluteSubOne(X);return U=M.__absoluteAnd(U,W,U),M.__absoluteAddOne(U,!0,U).__trim()}$.sign&&([$,X]=[X,$]);let G=M.__absoluteSubOne(X,z);return G=M.__absoluteAndNot(G,$,G),M.__absoluteAddOne(G,!0,G).__trim()}static asIntN($,X){var Y=Math.floor;if(X.length===0)return X;if($=Y($),0>$)throw new RangeError("Invalid value: not (convertible to) a safe integer");if($===0)return M.__zero();if($>=M.__kMaxLengthBits)return X;let z=0|($+29)/30;if(X.length<z)return X;let G=X.__unsignedDigit(z-1),U=1<<($-1)%30;if(X.length===z&&G<U)return X;if((G&U)!==U)return M.__truncateToNBits($,X);if(!X.sign)return M.__truncateAndSubFromPowerOfTwo($,X,!0);if((G&U-1)==0){for(let W=z-2;0<=W;W--)if(X.__digit(W)!==0)return M.__truncateAndSubFromPowerOfTwo($,X,!1);return X.length===z&&G===U?X:M.__truncateToNBits($,X)}return M.__truncateAndSubFromPowerOfTwo($,X,!1)}static asUintN($,X){var Y=Math.floor;if(X.length===0)return X;if($=Y($),0>$)throw new RangeError("Invalid value: not (convertible to) a safe integer");if($===0)return M.__zero();if(X.sign){if($>M.__kMaxLengthBits)throw new RangeError("BigInt too big");return M.__truncateAndSubFromPowerOfTwo($,X,!1)}if($>=M.__kMaxLengthBits)return X;let z=0|($+29)/30;if(X.length<z)return X;let G=$%30;if(X.length==z){if(G===0)return X;if(X.__digit(z-1)>>>G==0)return X}return M.__truncateToNBits($,X)}static ADD($,X){if($=M.__toPrimitive($),X=M.__toPrimitive(X),typeof $=="string")return typeof X!="string"&&(X=X.toString()),$+X;if(typeof X=="string")return $.toString()+X;if($=M.__toNumeric($),X=M.__toNumeric(X),M.__isBigInt($)&&M.__isBigInt(X))return M.add($,X);if(typeof $=="number"&&typeof X=="number")return $+X;throw new TypeError("Cannot mix BigInt and other types, use explicit conversions")}static LT($,X){return M.__compare($,X,0)}static LE($,X){return M.__compare($,X,1)}static GT($,X){return M.__compare($,X,2)}static GE($,X){return M.__compare($,X,3)}static EQ($,X){for(;;){if(M.__isBigInt($))return M.__isBigInt(X)?M.equal($,X):M.EQ(X,$);if(typeof $=="number"){if(M.__isBigInt(X))return M.__equalToNumber(X,$);if(typeof X!="object")return $==X;X=M.__toPrimitive(X)}else if(typeof $=="string"){if(M.__isBigInt(X))return $=M.__fromString($),$!==null&&M.equal($,X);if(typeof X!="object")return $==X;X=M.__toPrimitive(X)}else if(typeof $=="boolean"){if(M.__isBigInt(X))return M.__equalToNumber(X,+$);if(typeof X!="object")return $==X;X=M.__toPrimitive(X)}else if(typeof $=="symbol"){if(M.__isBigInt(X))return!1;if(typeof X!="object")return $==X;X=M.__toPrimitive(X)}else if(typeof $=="object"){if(typeof X=="object"&&X.constructor!==M)return $==X;$=M.__toPrimitive($)}else return $==X}}static NE($,X){return!M.EQ($,X)}static DataViewGetBigInt64($,X,Y=!1){return M.asIntN(64,M.DataViewGetBigUint64($,X,Y))}static DataViewGetBigUint64($,X,Y=!1){let[z,G]=Y?[4,0]:[0,4],U=$.getUint32(X+z,Y),W=$.getUint32(X+G,Y),Q=new M(3,!1);return Q.__setDigit(0,1073741823&W),Q.__setDigit(1,(268435455&U)<<2|W>>>30),Q.__setDigit(2,U>>>28),Q.__trim()}static DataViewSetBigInt64($,X,Y,z=!1){M.DataViewSetBigUint64($,X,Y,z)}static DataViewSetBigUint64($,X,Y,z=!1){Y=M.asUintN(64,Y);let G=0,U=0;if(0<Y.length&&(U=Y.__digit(0),1<Y.length)){let Z=Y.__digit(1);U|=Z<<30,G=Z>>>2,2<Y.length&&(G|=Y.__digit(2)<<28)}let[W,Q]=z?[4,0]:[0,4];$.setUint32(X+W,G,z),$.setUint32(X+Q,U,z)}static __zero(){return new M(0,!1)}static __oneDigit($,X){let Y=new M(1,X);return Y.__setDigit(0,$),Y}__copy(){let $=new M(this.length,this.sign);for(let X=0;X<this.length;X++)$[X]=this[X];return $}__trim(){let $=this.length,X=this[$-1];for(;X===0;)$--,X=this[$-1],this.pop();return $===0&&(this.sign=!1),this}__initializeDigits(){for(let $=0;$<this.length;$++)this[$]=0}static __decideRounding($,X,Y,z){if(0<X)return-1;let G;if(0>X)G=-X-1;else{if(Y===0)return-1;Y--,z=$.__digit(Y),G=29}let U=1<<G;if((z&U)==0)return-1;if(U-=1,(z&U)!=0)return 1;for(;0<Y;)if(Y--,$.__digit(Y)!==0)return 1;return 0}static __fromDouble($){M.__kBitConversionDouble[0]=$;let X=2047&M.__kBitConversionInts[M.__kBitConversionIntHigh]>>>20,Y=X-1023,z=(0|Y/30)+1,G=new M(z,0>$),U=1048575&M.__kBitConversionInts[M.__kBitConversionIntHigh]|1048576,W=M.__kBitConversionInts[M.__kBitConversionIntLow],Q=20,Z=Y%30,H,O=0;if(Z<20){let w=Q-Z;O=w+32,H=U>>>w,U=U<<32-w|W>>>w,W<<=32-w}else if(Z===20)O=32,H=U,U=W,W=0;else{let w=Z-Q;O=32-w,H=U<<w|W>>>32-w,U=W<<w,W=0}G.__setDigit(z-1,H);for(let w=z-2;0<=w;w--)0<O?(O-=30,H=U>>>2,U=U<<30|W>>>2,W<<=30):H=0,G.__setDigit(w,H);return G.__trim()}static __isWhitespace($){return 13>=$&&9<=$||(159>=$?$==32:131071>=$?$==160||$==5760:196607>=$?($&=131071,10>=$||$==40||$==41||$==47||$==95||$==4096):$==65279)}static __fromString($,X=0){let Y=0,z=$.length,G=0;if(G===z)return M.__zero();let U=$.charCodeAt(G);for(;M.__isWhitespace(U);){if(++G===z)return M.__zero();U=$.charCodeAt(G)}if(U===43){if(++G===z)return null;U=$.charCodeAt(G),Y=1}else if(U===45){if(++G===z)return null;U=$.charCodeAt(G),Y=-1}if(X===0){if(X=10,U===48){if(++G===z)return M.__zero();if(U=$.charCodeAt(G),U===88||U===120){if(X=16,++G===z)return null;U=$.charCodeAt(G)}else if(U===79||U===111){if(X=8,++G===z)return null;U=$.charCodeAt(G)}else if(U===66||U===98){if(X=2,++G===z)return null;U=$.charCodeAt(G)}}}else if(X===16&&U===48){if(++G===z)return M.__zero();if(U=$.charCodeAt(G),U===88||U===120){if(++G===z)return null;U=$.charCodeAt(G)}}if(Y!=0&&X!==10)return null;for(;U===48;){if(++G===z)return M.__zero();U=$.charCodeAt(G)}let W=z-G,Q=M.__kMaxBitsPerChar[X],Z=M.__kBitsPerCharTableMultiplier-1;if(W>1073741824/Q)return null;let H=Q*W+Z>>>M.__kBitsPerCharTableShift,O=new M(0|(H+29)/30,!1),w=10>X?X:10,V=10<X?X-10:0;if((X&X-1)==0){Q>>=M.__kBitsPerCharTableShift;let D=[],N=[],F=!1;do{let L=0,K=0;for(;;){let q;if(U-48>>>0<w)q=U-48;else if((32|U)-97>>>0<V)q=(32|U)-87;else{F=!0;break}if(K+=Q,L=L<<Q|q,++G===z){F=!0;break}if(U=$.charCodeAt(G),30<K+Q)break}D.push(L),N.push(K)}while(!F);M.__fillFromParts(O,D,N)}else{O.__initializeDigits();let D=!1,N=0;do{let F=0,L=1;for(;;){let q;if(U-48>>>0<w)q=U-48;else if((32|U)-97>>>0<V)q=(32|U)-87;else{D=!0;break}let R=L*X;if(1073741823<R)break;if(L=R,F=F*X+q,N++,++G===z){D=!0;break}U=$.charCodeAt(G)}Z=30*M.__kBitsPerCharTableMultiplier-1;let K=0|(Q*N+Z>>>M.__kBitsPerCharTableShift)/30;O.__inplaceMultiplyAdd(L,F,K)}while(!D)}if(G!==z){if(!M.__isWhitespace(U))return null;for(G++;G<z;G++)if(U=$.charCodeAt(G),!M.__isWhitespace(U))return null}return O.sign=Y==-1,O.__trim()}static __fillFromParts($,X,Y){let z=0,G=0,U=0;for(let W=X.length-1;0<=W;W--){let Q=X[W],Z=Y[W];G|=Q<<U,U+=Z,U===30?($.__setDigit(z++,G),U=0,G=0):30<U&&($.__setDigit(z++,1073741823&G),U-=30,G=Q>>>Z-U)}if(G!==0){if(z>=$.length)throw new Error("implementation bug");$.__setDigit(z++,G)}for(;z<$.length;z++)$.__setDigit(z,0)}static __toStringBasePowerOfTwo($,X){let Y=$.length,z=X-1;z=(85&z>>>1)+(85&z),z=(51&z>>>2)+(51&z),z=(15&z>>>4)+(15&z);let G=z,U=X-1,W=$.__digit(Y-1),Q=M.__clz30(W),Z=0|(30*Y-Q+G-1)/G;if($.sign&&Z++,268435456<Z)throw new Error("string too long");let H=Array(Z),O=Z-1,w=0,V=0;for(let N=0;N<Y-1;N++){let F=$.__digit(N),L=(w|F<<V)&U;H[O--]=M.__kConversionChars[L];let K=G-V;for(w=F>>>K,V=30-K;V>=G;)H[O--]=M.__kConversionChars[w&U],w>>>=G,V-=G}let D=(w|W<<V)&U;for(H[O--]=M.__kConversionChars[D],w=W>>>G-V;w!==0;)H[O--]=M.__kConversionChars[w&U],w>>>=G;if($.sign&&(H[O--]="-"),O!=-1)throw new Error("implementation bug");return H.join("")}static __toStringGeneric($,X,Y){let z=$.length;if(z===0)return"";if(z===1){let N=$.__unsignedDigit(0).toString(X);return Y===!1&&$.sign&&(N="-"+N),N}let G=30*z-M.__clz30($.__digit(z-1)),U=M.__kMaxBitsPerChar[X],W=U-1,Q=G*M.__kBitsPerCharTableMultiplier;Q+=W-1,Q=0|Q/W;let Z=Q+1>>1,H=M.exponentiate(M.__oneDigit(X,!1),M.__oneDigit(Z,!1)),O,w,V=H.__unsignedDigit(0);if(H.length===1&&32767>=V){O=new M($.length,!1),O.__initializeDigits();let N=0;for(let F=2*$.length-1;0<=F;F--){let L=N<<15|$.__halfDigit(F);O.__setHalfDigit(F,0|L/V),N=0|L%V}w=N.toString(X)}else{let N=M.__absoluteDivLarge($,H,!0,!0);O=N.quotient;let F=N.remainder.__trim();w=M.__toStringGeneric(F,X,!0)}O.__trim();let D=M.__toStringGeneric(O,X,!0);for(;w.length<Z;)w="0"+w;return Y===!1&&$.sign&&(D="-"+D),D+w}static __unequalSign($){return $?-1:1}static __absoluteGreater($){return $?-1:1}static __absoluteLess($){return $?1:-1}static __compareToBigInt($,X){let Y=$.sign;if(Y!==X.sign)return M.__unequalSign(Y);let z=M.__absoluteCompare($,X);return 0<z?M.__absoluteGreater(Y):0>z?M.__absoluteLess(Y):0}static __compareToNumber($,X){if(M.__isOneDigitInt(X)){let Y=$.sign,z=0>X;if(Y!==z)return M.__unequalSign(Y);if($.length===0){if(z)throw new Error("implementation bug");return X===0?0:-1}if(1<$.length)return M.__absoluteGreater(Y);let G=Math.abs(X),U=$.__unsignedDigit(0);return U>G?M.__absoluteGreater(Y):U<G?M.__absoluteLess(Y):0}return M.__compareToDouble($,X)}static __compareToDouble($,X){if(X!==X)return X;if(X===1/0)return-1;if(X===-1/0)return 1;let Y=$.sign;if(Y!==0>X)return M.__unequalSign(Y);if(X===0)throw new Error("implementation bug: should be handled elsewhere");if($.length===0)return-1;M.__kBitConversionDouble[0]=X;let z=2047&M.__kBitConversionInts[M.__kBitConversionIntHigh]>>>20;if(z==2047)throw new Error("implementation bug: handled elsewhere");let G=z-1023;if(0>G)return M.__absoluteGreater(Y);let U=$.length,W=$.__digit(U-1),Q=M.__clz30(W),Z=30*U-Q,H=G+1;if(Z<H)return M.__absoluteLess(Y);if(Z>H)return M.__absoluteGreater(Y);let O=1048576|1048575&M.__kBitConversionInts[M.__kBitConversionIntHigh],w=M.__kBitConversionInts[M.__kBitConversionIntLow],V=20,D=29-Q;if(D!==(0|(Z-1)%30))throw new Error("implementation bug");let N,F=0;if(20>D){let L=V-D;F=L+32,N=O>>>L,O=O<<32-L|w>>>L,w<<=32-L}else if(D===20)F=32,N=O,O=w,w=0;else{let L=D-V;F=32-L,N=O<<L|w>>>32-L,O=w<<L,w=0}if(W>>>=0,N>>>=0,W>N)return M.__absoluteGreater(Y);if(W<N)return M.__absoluteLess(Y);for(let L=U-2;0<=L;L--){0<F?(F-=30,N=O>>>2,O=O<<30|w>>>2,w<<=30):N=0;let K=$.__unsignedDigit(L);if(K>N)return M.__absoluteGreater(Y);if(K<N)return M.__absoluteLess(Y)}if(O!==0||w!==0){if(F===0)throw new Error("implementation bug");return M.__absoluteLess(Y)}return 0}static __equalToNumber($,X){var Y=Math.abs;return M.__isOneDigitInt(X)?X===0?$.length===0:$.length===1&&$.sign===0>X&&$.__unsignedDigit(0)===Y(X):M.__compareToDouble($,X)===0}static __comparisonResultToBool($,X){return X===0?0>$:X===1?0>=$:X===2?0<$:X===3?0<=$:void 0}static __compare($,X,Y){if($=M.__toPrimitive($),X=M.__toPrimitive(X),typeof $=="string"&&typeof X=="string")switch(Y){case 0:return $<X;case 1:return $<=X;case 2:return $>X;case 3:return $>=X}if(M.__isBigInt($)&&typeof X=="string")return X=M.__fromString(X),X!==null&&M.__comparisonResultToBool(M.__compareToBigInt($,X),Y);if(typeof $=="string"&&M.__isBigInt(X))return $=M.__fromString($),$!==null&&M.__comparisonResultToBool(M.__compareToBigInt($,X),Y);if($=M.__toNumeric($),X=M.__toNumeric(X),M.__isBigInt($)){if(M.__isBigInt(X))return M.__comparisonResultToBool(M.__compareToBigInt($,X),Y);if(typeof X!="number")throw new Error("implementation bug");return M.__comparisonResultToBool(M.__compareToNumber($,X),Y)}if(typeof $!="number")throw new Error("implementation bug");if(M.__isBigInt(X))return M.__comparisonResultToBool(M.__compareToNumber(X,$),2^Y);if(typeof X!="number")throw new Error("implementation bug");return Y===0?$<X:Y===1?$<=X:Y===2?$>X:Y===3?$>=X:void 0}__clzmsd(){return M.__clz30(this.__digit(this.length-1))}static __absoluteAdd($,X,Y){if($.length<X.length)return M.__absoluteAdd(X,$,Y);if($.length===0)return $;if(X.length===0)return $.sign===Y?$:M.unaryMinus($);let z=$.length;($.__clzmsd()===0||X.length===$.length&&X.__clzmsd()===0)&&z++;let G=new M(z,Y),U=0,W=0;for(;W<X.length;W++){let Q=$.__digit(W)+X.__digit(W)+U;U=Q>>>30,G.__setDigit(W,1073741823&Q)}for(;W<$.length;W++){let Q=$.__digit(W)+U;U=Q>>>30,G.__setDigit(W,1073741823&Q)}return W<G.length&&G.__setDigit(W,U),G.__trim()}static __absoluteSub($,X,Y){if($.length===0)return $;if(X.length===0)return $.sign===Y?$:M.unaryMinus($);let z=new M($.length,Y),G=0,U=0;for(;U<X.length;U++){let W=$.__digit(U)-X.__digit(U)-G;G=1&W>>>30,z.__setDigit(U,1073741823&W)}for(;U<$.length;U++){let W=$.__digit(U)-G;G=1&W>>>30,z.__setDigit(U,1073741823&W)}return z.__trim()}static __absoluteAddOne($,X,Y=null){let z=$.length;Y===null?Y=new M(z,X):Y.sign=X;let G=1;for(let U=0;U<z;U++){let W=$.__digit(U)+G;G=W>>>30,Y.__setDigit(U,1073741823&W)}return G!=0&&Y.__setDigitGrow(z,1),Y}static __absoluteSubOne($,X){let Y=$.length;X=X||Y;let z=new M(X,!1),G=1;for(let U=0;U<Y;U++){let W=$.__digit(U)-G;G=1&W>>>30,z.__setDigit(U,1073741823&W)}if(G!=0)throw new Error("implementation bug");for(let U=Y;U<X;U++)z.__setDigit(U,0);return z}static __absoluteAnd($,X,Y=null){let z=$.length,G=X.length,U=G;if(z<G){U=z;let Z=$,H=z;$=X,z=G,X=Z,G=H}let W=U;Y===null?Y=new M(W,!1):W=Y.length;let Q=0;for(;Q<U;Q++)Y.__setDigit(Q,$.__digit(Q)&X.__digit(Q));for(;Q<W;Q++)Y.__setDigit(Q,0);return Y}static __absoluteAndNot($,X,Y=null){let z=$.length,G=X.length,U=G;z<G&&(U=z);let W=z;Y===null?Y=new M(W,!1):W=Y.length;let Q=0;for(;Q<U;Q++)Y.__setDigit(Q,$.__digit(Q)&~X.__digit(Q));for(;Q<z;Q++)Y.__setDigit(Q,$.__digit(Q));for(;Q<W;Q++)Y.__setDigit(Q,0);return Y}static __absoluteOr($,X,Y=null){let z=$.length,G=X.length,U=G;if(z<G){U=z;let Z=$,H=z;$=X,z=G,X=Z,G=H}let W=z;Y===null?Y=new M(W,!1):W=Y.length;let Q=0;for(;Q<U;Q++)Y.__setDigit(Q,$.__digit(Q)|X.__digit(Q));for(;Q<z;Q++)Y.__setDigit(Q,$.__digit(Q));for(;Q<W;Q++)Y.__setDigit(Q,0);return Y}static __absoluteXor($,X,Y=null){let z=$.length,G=X.length,U=G;if(z<G){U=z;let Z=$,H=z;$=X,z=G,X=Z,G=H}let W=z;Y===null?Y=new M(W,!1):W=Y.length;let Q=0;for(;Q<U;Q++)Y.__setDigit(Q,$.__digit(Q)^X.__digit(Q));for(;Q<z;Q++)Y.__setDigit(Q,$.__digit(Q));for(;Q<W;Q++)Y.__setDigit(Q,0);return Y}static __absoluteCompare($,X){let Y=$.length-X.length;if(Y!=0)return Y;let z=$.length-1;for(;0<=z&&$.__digit(z)===X.__digit(z);)z--;return 0>z?0:$.__unsignedDigit(z)>X.__unsignedDigit(z)?1:-1}static __multiplyAccumulate($,X,Y,z){if(X===0)return;let G=32767&X,U=X>>>15,W=0,Q=0;for(let Z,H=0;H<$.length;H++,z++){Z=Y.__digit(z);let O=$.__digit(H),w=32767&O,V=O>>>15,D=M.__imul(w,G),N=M.__imul(w,U),F=M.__imul(V,G),L=M.__imul(V,U);Z+=Q+D+W,W=Z>>>30,Z&=1073741823,Z+=((32767&N)<<15)+((32767&F)<<15),W+=Z>>>30,Q=L+(N>>>15)+(F>>>15),Y.__setDigit(z,1073741823&Z)}for(;W!=0||Q!==0;z++){let Z=Y.__digit(z);Z+=W+Q,Q=0,W=Z>>>30,Y.__setDigit(z,1073741823&Z)}}static __internalMultiplyAdd($,X,Y,z,G){let U=Y,W=0;for(let Q=0;Q<z;Q++){let Z=$.__digit(Q),H=M.__imul(32767&Z,X),O=M.__imul(Z>>>15,X),w=H+((32767&O)<<15)+W+U;U=w>>>30,W=O>>>15,G.__setDigit(Q,1073741823&w)}if(G.length>z)for(G.__setDigit(z++,U+W);z<G.length;)G.__setDigit(z++,0);else if(U+W!==0)throw new Error("implementation bug")}__inplaceMultiplyAdd($,X,Y){Y>this.length&&(Y=this.length);let z=32767&$,G=$>>>15,U=0,W=X;for(let Q=0;Q<Y;Q++){let Z=this.__digit(Q),H=32767&Z,O=Z>>>15,w=M.__imul(H,z),V=M.__imul(H,G),D=M.__imul(O,z),N=M.__imul(O,G),F=W+w+U;U=F>>>30,F&=1073741823,F+=((32767&V)<<15)+((32767&D)<<15),U+=F>>>30,W=N+(V>>>15)+(D>>>15),this.__setDigit(Q,1073741823&F)}if(U!=0||W!==0)throw new Error("implementation bug")}static __absoluteDivSmall($,X,Y=null){Y===null&&(Y=new M($.length,!1));let z=0;for(let G,U=2*$.length-1;0<=U;U-=2){G=(z<<15|$.__halfDigit(U))>>>0;let W=0|G/X;z=0|G%X,G=(z<<15|$.__halfDigit(U-1))>>>0;let Q=0|G/X;z=0|G%X,Y.__setDigit(U>>>1,W<<15|Q)}return Y}static __absoluteModSmall($,X){let Y=0;for(let z=2*$.length-1;0<=z;z--)Y=0|((Y<<15|$.__halfDigit(z))>>>0)%X;return Y}static __absoluteDivLarge($,X,Y,z){let G=X.__halfDigitLength(),U=X.length,W=$.__halfDigitLength()-G,Q=null;Y&&(Q=new M(W+2>>>1,!1),Q.__initializeDigits());let Z=new M(G+2>>>1,!1);Z.__initializeDigits();let H=M.__clz15(X.__halfDigit(G-1));0<H&&(X=M.__specialLeftShift(X,H,0));let O=M.__specialLeftShift($,H,1),w=X.__halfDigit(G-1),V=0;for(let D,N=W;0<=N;N--){D=32767;let F=O.__halfDigit(N+G);if(F!==w){let K=(F<<15|O.__halfDigit(N+G-1))>>>0;D=0|K/w;let q=0|K%w,R=X.__halfDigit(G-2),_=O.__halfDigit(N+G-2);for(;M.__imul(D,R)>>>0>(q<<16|_)>>>0&&(D--,q+=w,!(32767<q)););}M.__internalMultiplyAdd(X,D,0,U,Z);let L=O.__inplaceSub(Z,N,G+1);L!==0&&(L=O.__inplaceAdd(X,N,G),O.__setHalfDigit(N+G,32767&O.__halfDigit(N+G)+L),D--),Y&&(1&N?V=D<<15:Q.__setDigit(N>>>1,V|D))}if(z)return O.__inplaceRightShift(H),Y?{quotient:Q,remainder:O}:O;if(Y)return Q;throw new Error("unreachable")}static __clz15($){return M.__clz30($)-15}__inplaceAdd($,X,Y){let z=0;for(let G=0;G<Y;G++){let U=this.__halfDigit(X+G)+$.__halfDigit(G)+z;z=U>>>15,this.__setHalfDigit(X+G,32767&U)}return z}__inplaceSub($,X,Y){let z=0;if(1&X){X>>=1;let G=this.__digit(X),U=32767&G,W=0;for(;W<Y-1>>>1;W++){let H=$.__digit(W),O=(G>>>15)-(32767&H)-z;z=1&O>>>15,this.__setDigit(X+W,(32767&O)<<15|32767&U),G=this.__digit(X+W+1),U=(32767&G)-(H>>>15)-z,z=1&U>>>15}let Q=$.__digit(W),Z=(G>>>15)-(32767&Q)-z;if(z=1&Z>>>15,this.__setDigit(X+W,(32767&Z)<<15|32767&U),X+W+1>=this.length)throw new RangeError("out of bounds");(1&Y)==0&&(G=this.__digit(X+W+1),U=(32767&G)-(Q>>>15)-z,z=1&U>>>15,this.__setDigit(X+$.length,1073709056&G|32767&U))}else{X>>=1;let G=0;for(;G<$.length-1;G++){let H=this.__digit(X+G),O=$.__digit(G),w=(32767&H)-(32767&O)-z;z=1&w>>>15;let V=(H>>>15)-(O>>>15)-z;z=1&V>>>15,this.__setDigit(X+G,(32767&V)<<15|32767&w)}let U=this.__digit(X+G),W=$.__digit(G),Q=(32767&U)-(32767&W)-z;z=1&Q>>>15;let Z=0;(1&Y)==0&&(Z=(U>>>15)-(W>>>15)-z,z=1&Z>>>15),this.__setDigit(X+G,(32767&Z)<<15|32767&Q)}return z}__inplaceRightShift($){if($===0)return;let X=this.__digit(0)>>>$,Y=this.length-1;for(let z=0;z<Y;z++){let G=this.__digit(z+1);this.__setDigit(z,1073741823&G<<30-$|X),X=G>>>$}this.__setDigit(Y,X)}static __specialLeftShift($,X,Y){let z=$.length,G=new M(z+Y,!1);if(X===0){for(let W=0;W<z;W++)G.__setDigit(W,$.__digit(W));return 0<Y&&G.__setDigit(z,0),G}let U=0;for(let W=0;W<z;W++){let Q=$.__digit(W);G.__setDigit(W,1073741823&Q<<X|U),U=Q>>>30-X}return 0<Y&&G.__setDigit(z,U),G}static __leftShiftByAbsolute($,X){let Y=M.__toShiftAmount(X);if(0>Y)throw new RangeError("BigInt too big");let z=0|Y/30,G=Y%30,U=$.length,W=G!==0&&$.__digit(U-1)>>>30-G!=0,Q=U+z+(W?1:0),Z=new M(Q,$.sign);if(G===0){let H=0;for(;H<z;H++)Z.__setDigit(H,0);for(;H<Q;H++)Z.__setDigit(H,$.__digit(H-z))}else{let H=0;for(let O=0;O<z;O++)Z.__setDigit(O,0);for(let O=0;O<U;O++){let w=$.__digit(O);Z.__setDigit(O+z,1073741823&w<<G|H),H=w>>>30-G}if(W)Z.__setDigit(U+z,H);else if(H!==0)throw new Error("implementation bug")}return Z.__trim()}static __rightShiftByAbsolute($,X){let{length:Y,sign:z}=$,G=M.__toShiftAmount(X);if(0>G)return M.__rightShiftByMaximum(z);let U=0|G/30,W=G%30,Q=Y-U;if(0>=Q)return M.__rightShiftByMaximum(z);let Z=!1;if(z){if(($.__digit(U)&(1<<W)-1)!=0)Z=!0;else for(let O=0;O<U;O++)if($.__digit(O)!==0){Z=!0;break}}if(Z&&W===0)~$.__digit(Y-1)==0&&Q++;let H=new M(Q,z);if(W===0){H.__setDigit(Q-1,0);for(let O=U;O<Y;O++)H.__setDigit(O-U,$.__digit(O))}else{let O=$.__digit(U)>>>W,w=Y-U-1;for(let V=0;V<w;V++){let D=$.__digit(V+U+1);H.__setDigit(V,1073741823&D<<30-W|O),O=D>>>W}H.__setDigit(w,O)}return Z&&(H=M.__absoluteAddOne(H,!0,H)),H.__trim()}static __rightShiftByMaximum($){return $?M.__oneDigit(1,!0):M.__zero()}static __toShiftAmount($){if(1<$.length)return-1;let X=$.__unsignedDigit(0);return X>M.__kMaxLengthBits?-1:X}static __toPrimitive($,X="default"){if(typeof $!="object")return $;if($.constructor===M)return $;if(typeof Symbol!="undefined"&&typeof Symbol.toPrimitive=="symbol"&&$[Symbol.toPrimitive]){let G=$[Symbol.toPrimitive](X);if(typeof G!="object")return G;throw new TypeError("Cannot convert object to primitive value")}let Y=$.valueOf;if(Y){let G=Y.call($);if(typeof G!="object")return G}let z=$.toString;if(z){let G=z.call($);if(typeof G!="object")return G}throw new TypeError("Cannot convert object to primitive value")}static __toNumeric($){return M.__isBigInt($)?$:+$}static __isBigInt($){return typeof $=="object"&&$!==null&&$.constructor===M}static __truncateToNBits($,X){let Y=0|($+29)/30,z=new M(Y,X.sign),G=Y-1;for(let W=0;W<G;W++)z.__setDigit(W,X.__digit(W));let U=X.__digit(G);if($%30!=0){let W=32-$%30;U=U<<W>>>W}return z.__setDigit(G,U),z.__trim()}static __truncateAndSubFromPowerOfTwo($,X,Y){var z=Math.min;let G=0|($+29)/30,U=new M(G,Y),W=0,Q=G-1,Z=0;for(let V=z(Q,X.length);W<V;W++){let D=0-X.__digit(W)-Z;Z=1&D>>>30,U.__setDigit(W,1073741823&D)}for(;W<Q;W++)U.__setDigit(W,0|1073741823&-Z);let H=Q<X.length?X.__digit(Q):0,O=$%30,w;if(O==0)w=0-H-Z,w&=1073741823;else{let V=32-O;H=H<<V>>>V;let D=1<<32-V;w=D-H-Z,w&=D-1}return U.__setDigit(Q,w),U.__trim()}__digit($){return this[$]}__unsignedDigit($){return this[$]>>>0}__setDigit($,X){this[$]=0|X}__setDigitGrow($,X){this[$]=0|X}__halfDigitLength(){let $=this.length;return 32767>=this.__unsignedDigit($-1)?2*$-1:2*$}__halfDigit($){return 32767&this[$>>>1]>>>15*(1&$)}__setHalfDigit($,X){let Y=$>>>1,z=this.__digit(Y),G=1&$?32767&z|X<<15:1073709056&z|32767&X;this.__setDigit(Y,G)}static __digitPow($,X){let Y=1;for(;0<X;)1&X&&(Y*=$),X>>>=1,$*=$;return Y}static __detectBigEndian(){return M.__kBitConversionDouble[0]=-0,M.__kBitConversionInts[0]!==0}static __isOneDigitInt($){return(1073741823&$)===$}}M.__kMaxLength=33554432,M.__kMaxLengthBits=M.__kMaxLength<<5,M.__kMaxBitsPerChar=[0,0,32,51,64,75,83,90,96,102,107,111,115,119,122,126,128,131,134,136,139,141,143,145,147,149,151,153,154,156,158,159,160,162,163,165,166],M.__kBitsPerCharTableShift=5,M.__kBitsPerCharTableMultiplier=1<<M.__kBitsPerCharTableShift,M.__kConversionChars=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"],M.__kBitConversionBuffer=new ArrayBuffer(8),M.__kBitConversionDouble=new Float64Array(M.__kBitConversionBuffer),M.__kBitConversionInts=new Int32Array(M.__kBitConversionBuffer),M.__kBitConversionIntHigh=M.__detectBigEndian()?0:1,M.__kBitConversionIntLow=M.__detectBigEndian()?1:0,M.__clz30=Math.clz32?function($){return Math.clz32($)-2}:function($){return $===0?30:0|29-(0|Math.log($>>>0)/Math.LN2)},M.__imul=Math.imul||function($,X){return 0|$*X};var B=M;var w1=B.BigInt(0),u9=B.BigInt(1),zV=B.BigInt(2),jS=B.BigInt(10),BS=B.BigInt(24),IS=B.BigInt(60),xS=B.BigInt(1000),t9=B.BigInt(1e6),b9=B.BigInt(1e9),aL=B.multiply(B.BigInt(3600),b9),SS=B.multiply(IS,b9),R8=B.multiply(aL,BS);function k0($){return typeof $=="bigint"?B.BigInt($.toString(10)):$}function sL($){return B.equal(B.remainder($,zV),w1)}function AX($){return B.lessThan($,w1)?B.unaryMinus($):$}function az($,X){return B.lessThan($,X)?-1:B.greaterThan($,X)?1:0}function v9($,X){return{quotient:B.divide($,X),remainder:B.remainder($,X)}}var ML,LL,N$="slot-epochNanoSeconds",E$="slot-iso-date",W6="slot-iso-date-time",N6="slot-time",p="slot-calendar",eL="slot-date-brand",$J="slot-year-month-brand",XJ="slot-month-day-brand",m$="slot-time-zone",A4="slot-years",K4="slot-months",p4="slot-weeks",_4="slot-days",q4="slot-hours",T4="slot-minutes",R4="slot-seconds",P4="slot-milliseconds",v4="slot-microseconds",d4="slot-nanoseconds",YJ="date",GJ="ym",zJ="md",UJ="time",WJ="datetime",QJ="instant",BX="original",uY="timezone-canonical",gw="timezone-original",C9="calendar-id",ZJ="locale",yw="options",HJ=new WeakMap,mw=Symbol.for("@@Temporal__GetSlots");(ML=globalThis)[mw]||(ML[mw]=function($){return HJ.get($)});var H3=globalThis[mw],uw=Symbol.for("@@Temporal__CreateSlots");(LL=globalThis)[uw]||(LL[uw]=function($){HJ.set($,Object.create(null))});var d0=globalThis[uw];function x4($,...X){if(!$||typeof $!="object")return!1;let Y=H3($);return!!Y&&X.every((z)=>(z in Y))}function E($,X){let Y=H3($)?.[X];if(Y===void 0)throw new TypeError(`Missing internal slot ${X}`);return Y}function R$($,X,Y){let z=H3($);if(z===void 0)throw new TypeError("Missing slots for the given container");if(z[X])throw new TypeError(`${X} already has set`);z[X]=Y}var cw={};function l0($,X){Object.defineProperty($.prototype,Symbol.toStringTag,{value:X,writable:!1,enumerable:!1,configurable:!0});let Y=Object.getOwnPropertyNames($);for(let G=0;G<Y.length;G++){let U=Y[G],W=Object.getOwnPropertyDescriptor($,U);W.configurable&&W.enumerable&&(W.enumerable=!1,Object.defineProperty($,U,W))}let z=Object.getOwnPropertyNames($.prototype);for(let G=0;G<z.length;G++){let U=z[G],W=Object.getOwnPropertyDescriptor($.prototype,U);W.configurable&&W.enumerable&&(W.enumerable=!1,Object.defineProperty($.prototype,U,W))}pw(X,$),pw(`${X}.prototype`,$.prototype)}function pw($,X){let Y=`%${$}%`;if(cw[Y]!==void 0)throw new Error(`intrinsic ${$} already exists`);cw[Y]=X}function X4($){return cw[$]}function pY($,X){let Y=$;if(Y===0)return{div:Y,mod:Y};let z=Math.sign(Y);Y=Math.abs(Y);let G=Math.trunc(1+Math.log10(Y));if(X>=G)return{div:0*z,mod:z*Y};if(X===0)return{div:z*Y,mod:0*z};let U=Y.toPrecision(G);return{div:z*Number.parseInt(U.slice(0,G-X),10),mod:z*Number.parseInt(U.slice(G-X),10)}}function Sw($,X,Y){let z=$,G=Y;if(z===0)return G;let U=Math.sign(z)||Math.sign(G);z=Math.abs(z),G=Math.abs(G);let W=z.toPrecision(Math.trunc(1+Math.log10(z)));if(G===0)return U*Number.parseInt(W+"0".repeat(X),10);let Q=W+G.toPrecision(Math.trunc(1+Math.log10(G))).padStart(X,"0");return U*Number.parseInt(Q,10)}function O3($,X){let Y=X==="negative";switch($){case"ceil":return Y?"zero":"infinity";case"floor":return Y?"infinity":"zero";case"expand":return"infinity";case"trunc":return"zero";case"halfCeil":return Y?"half-zero":"half-infinity";case"halfFloor":return Y?"half-infinity":"half-zero";case"halfExpand":return"half-infinity";case"halfTrunc":return"half-zero";case"halfEven":return"half-even"}}function w3($,X,Y,z,G){return G==="zero"?$:G==="infinity"?X:Y<0?$:Y>0?X:G==="half-zero"?$:G==="half-infinity"?X:z?$:X}class C${constructor($){this.totalNs=k0($),this.sec=B.toNumber(B.divide(this.totalNs,b9)),this.subsec=B.toNumber(B.remainder(this.totalNs,b9))}static validateNew($,X){if(B.greaterThan(AX($),C$.MAX))throw new RangeError(`${X} of duration time units cannot exceed ${C$.MAX} s`);return new C$($)}static fromEpochNsDiff($,X){let Y=B.subtract(k0($),k0(X));return new C$(Y)}static fromComponents($,X,Y,z,G,U){let W=B.add(B.add(B.add(B.add(B.add(B.BigInt(U),B.multiply(B.BigInt(G),xS)),B.multiply(B.BigInt(z),t9)),B.multiply(B.BigInt(Y),b9)),B.multiply(B.BigInt(X),SS)),B.multiply(B.BigInt($),aL));return C$.validateNew(W,"total")}abs(){return new C$(AX(this.totalNs))}add($){return C$.validateNew(B.add(this.totalNs,$.totalNs),"sum")}add24HourDays($){return C$.validateNew(B.add(this.totalNs,B.multiply(B.BigInt($),R8)),"sum")}addToEpochNs($){return B.add(k0($),this.totalNs)}cmp($){return az(this.totalNs,$.totalNs)}divmod($){let{quotient:X,remainder:Y}=v9(this.totalNs,B.BigInt($));return{quotient:B.toNumber(X),remainder:new C$(Y)}}fdiv($){let X=k0($),Y=B.BigInt(X),{quotient:z,remainder:G}=v9(this.totalNs,Y),U=[],W,Q=(B.lessThan(this.totalNs,w1)?-1:1)*Math.sign(B.toNumber(X));for(;!B.equal(G,w1)&&U.length<50;)G=B.multiply(G,jS),{quotient:W,remainder:G}=v9(G,Y),U.push(Math.abs(B.toNumber(W)));return Q*Number(AX(z).toString()+"."+U.join(""))}isZero(){return B.equal(this.totalNs,w1)}round($,X){let Y=k0($);if(B.equal(Y,u9))return this;let{quotient:z,remainder:G}=v9(this.totalNs,Y),U=B.lessThan(this.totalNs,w1)?"negative":"positive",W=B.multiply(AX(z),Y),Q=B.add(W,Y),Z=az(AX(B.multiply(G,zV)),Y),H=O3(X,U),O=B.equal(AX(this.totalNs),W)?W:w3(W,Q,Z,sL(z),H),w=U==="positive"?O:B.unaryMinus(O);return C$.validateNew(w,"rounding")}sign(){return this.cmp(new C$(w1))}subtract($){return C$.validateNew(B.subtract(this.totalNs,$.totalNs),"difference")}}C$.MAX=B.BigInt("9007199254740991999999999"),C$.ZERO=new C$(w1);var JL=/[A-Za-z._][A-Za-z._0-9+-]*/,a9=new RegExp(`(?:${/(?:[+-](?:[01][0-9]|2[0-3])(?::?[0-5][0-9])?)/.source}|(?:${JL.source})(?:\\/(?:${JL.source}))*)`),OJ=/(?:[+-]\d{6}|\d{4})/,sz=/(?:0[1-9]|1[0-2])/,dw=/(?:0[1-9]|[12]\d|3[01])/,kS=new RegExp(`(${OJ.source})(?:-(${sz.source})-(${dw.source})|(${sz.source})(${dw.source}))`),wJ=/(\d{2})(?::(\d{2})(?::(\d{2})(?:[.,](\d{1,9}))?)?|(\d{2})(?:(\d{2})(?:[.,](\d{1,9}))?)?)?/,VJ=/((?:[+-])(?:[01][0-9]|2[0-3])(?::?(?:[0-5][0-9])(?::?(?:[0-5][0-9])(?:[.,](?:\d{1,9}))?)?)?)/,DJ=new RegExp(`([zZ])|${VJ.source}?`),rY=/\[(!)?([a-z_][a-z0-9_-]*)=([A-Za-z0-9]+(?:-[A-Za-z0-9]+)*)\]/g,bS=new RegExp([`^${kS.source}`,`(?:(?:[tT]|\\s+)${wJ.source}(?:${DJ.source})?)?`,`(?:\\[!?(${a9.source})\\])?`,`((?:${rY.source})*)$`].join("")),fS=new RegExp([`^[tT]?${wJ.source}`,`(?:${DJ.source})?`,`(?:\\[!?${a9.source}\\])?`,`((?:${rY.source})*)$`].join("")),hS=new RegExp(`^(${OJ.source})-?(${sz.source})(?:\\[!?${a9.source}\\])?((?:${rY.source})*)$`),gS=new RegExp(`^(?:--)?(${sz.source})-?(${dw.source})(?:\\[!?${a9.source}\\])?((?:${rY.source})*)$`),kw=/(\d+)(?:[.,](\d{1,9}))?/,yS=new RegExp(`(?:${kw.source}H)?(?:${kw.source}M)?(?:${kw.source}S)?`),mS=new RegExp(`^([+-])?P${/(?:(\d+)Y)?(?:(\d+)M)?(?:(\d+)W)?(?:(\d+)D)?/.source}(?:T(?!$)${yS.source})?$`,"i"),P8=86400000,ez=1e6*P8,uS=60000000000,NJ=1e8*P8,nY=m1(NJ),c9=B.unaryMinus(nY),cS=B.add(B.subtract(c9,R8),u9),pS=B.subtract(B.add(nY,R8),u9),dS=146097*P8,AL=-271821,KL=275760,f9=Date.UTC(1847,0,1),lS=["iso8601","hebrew","islamic","islamic-umalqura","islamic-tbla","islamic-civil","islamic-rgsa","islamicc","persian","ethiopic","ethioaa","ethiopic-amete-alem","coptic","chinese","dangi","roc","indian","buddhist","japanese","gregory"],iS=new Set(["ACT","AET","AGT","ART","AST","BET","BST","CAT","CNT","CST","CTT","EAT","ECT","IET","IST","JST","MIT","NET","NST","PLT","PNT","PRT","PST","SST","VST"]);function E6($){return typeof $=="object"&&$!==null||typeof $=="function"}function V3($){if(typeof $=="bigint")throw new TypeError("Cannot convert BigInt to number");return Number($)}function D3($){if(typeof $=="symbol")throw new TypeError("Cannot convert a Symbol value to a String");return String($)}function M$($){let X=V3($);if(X===0)return 0;if(Number.isNaN(X)||X===1/0||X===-1/0)throw new RangeError("invalid number value");let Y=Math.trunc(X);return Y===0?0:Y}function _L($,X){let Y=M$($);if(Y<=0){if(X!==void 0)throw new RangeError(`property '${X}' cannot be a a number less than one`);throw new RangeError("Cannot convert a number less than one to a positive integer")}return Y}function g1($){let X=V3($);if(Number.isNaN(X))throw new RangeError("not a number");if(X===1/0||X===-1/0)throw new RangeError("infinity is out of range");if(!function(Y){if(typeof Y!="number"||Number.isNaN(Y)||Y===1/0||Y===-1/0)return!1;let z=Math.abs(Y);return Math.floor(z)===z}(X))throw new RangeError(`unsupported fractional value ${$}`);return X===0?0:X}function p9($,X){return String($).padStart(X,"0")}function g6($){if(typeof $!="string")throw new TypeError(`expected a string, not ${String($)}`);return $}function lw($,X){if(E6($)){let Y=$?.toString();if(typeof Y=="string"||typeof Y=="number")return Y;throw new TypeError("Cannot convert object to primitive value")}return $}var iw=["era","eraYear","year","month","monthCode","day","hour","minute","second","millisecond","microsecond","nanosecond","offset","timeZone"],rS={era:D3,eraYear:M$,year:M$,month:_L,monthCode:function($){let X=g6(lw($));if(X.length<3||X.length>4||X[0]!=="M"||"0123456789".indexOf(X[1])===-1||"0123456789".indexOf(X[2])===-1||X[1]+X[2]==="00"&&X[3]!=="L"||X[3]!=="L"&&X[3]!==void 0)throw new RangeError(`bad month code ${X}; must match M01-M99 or M00L-M99L`);return X},day:_L,hour:M$,minute:M$,second:M$,millisecond:M$,microsecond:M$,nanosecond:M$,offset:function($){let X=g6(lw($));return U2(X),X},timeZone:B4},nS={hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0},oY=[["years","year","date"],["months","month","date"],["weeks","week","date"],["days","day","date"],["hours","hour","time"],["minutes","minute","time"],["seconds","second","time"],["milliseconds","millisecond","time"],["microseconds","microsecond","time"],["nanoseconds","nanosecond","time"]],qL=Object.fromEntries(oY.map(($)=>[$[0],$[1]])),oS=Object.fromEntries(oY.map(([$,X])=>[X,$])),h9=oY.map(([,$])=>$),tY={day:ez,hour:3600000000000,minute:60000000000,second:1e9,millisecond:1e6,microsecond:1000,nanosecond:1},$3=["days","hours","microseconds","milliseconds","minutes","months","nanoseconds","seconds","weeks","years"],tS=Intl.DateTimeFormat,TL=new Map;function EJ($){let X=n9($),Y=TL.get(X);return Y===void 0&&(Y=new tS("en-us",{timeZone:X,hour12:!1,era:"short",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"}),TL.set(X,Y)),Y}function s6($){return x4($,N$)&&!x4($,m$,p)}function V6($){return x4($,A4,K4,_4,q4,T4,R4,P4,v4,d4)}function D6($){return x4($,eL)}function J6($){return x4($,N6)}function e$($){return x4($,W6)}function e6($){return x4($,$J)}function O1($){return x4($,XJ)}function v$($){return x4($,N$,m$,p)}function k($,X){if(!X($))throw new TypeError("invalid receiver: method called with the wrong type of this-object")}function Y2($){if(x4($,p)||x4($,m$))throw new TypeError("with() does not support a calendar or timeZone property");if(J6($))throw new TypeError("with() does not accept Temporal.PlainTime, use withPlainTime() instead");if($.calendar!==void 0)throw new TypeError("with() does not support a calendar property");if($.timeZone!==void 0)throw new TypeError("with() does not support a timeZone property")}function s9($,X){return X==="never"||X==="auto"&&$==="iso8601"?"":`[${X==="critical"?"!":""}u-ca=${$}]`}function N3($){let X,Y,z=!1;for(rY.lastIndex=0;Y=rY.exec($);){let{1:G,2:U,3:W}=Y;if(U==="u-ca"){if(X===void 0)X=W,z=G==="!";else if(G==="!"||z)throw new RangeError(`Invalid annotations in ${$}: more than one u-ca present with critical flag`)}else if(G==="!")throw new RangeError(`Unrecognized annotation: !${U}=${W}`)}return X}function V0($){let X=bS.exec($);if(!X)throw new RangeError(`invalid RFC 9557 string: ${$}`);let Y=N3(X[16]),z=X[1];if(z==="-000000")throw new RangeError(`invalid RFC 9557 string: ${$}`);let G=+z,U=+(X[2]??X[4]??1),W=+(X[3]??X[5]??1),Q=X[6]!==void 0,Z=+(X[6]??0),H=+(X[7]??X[10]??0),O=+(X[8]??X[11]??0);O===60&&(O=59);let w=(X[9]??X[12]??"")+"000000000",V=+w.slice(0,3),D=+w.slice(3,6),N=+w.slice(6,9),F,L=!1;X[13]?(F=void 0,L=!0):X[14]&&(F=X[14]);let K=X[15];return OV(G,U,W,Z,H,O,V,D,N),{year:G,month:U,day:W,time:Q?{hour:Z,minute:H,second:O,millisecond:V,microsecond:D,nanosecond:N}:"start-of-day",tzAnnotation:K,offset:F,z:L,calendar:Y}}function FJ($){let X=fS.exec($),Y,z,G,U,W,Q,Z;if(X){Z=N3(X[10]),Y=+(X[1]??0),z=+(X[2]??X[5]??0),G=+(X[3]??X[6]??0),G===60&&(G=59);let H=(X[4]??X[7]??"")+"000000000";if(U=+H.slice(0,3),W=+H.slice(3,6),Q=+H.slice(6,9),X[8])throw new RangeError("Z designator not supported for PlainTime")}else{let H,O;if({time:H,z:O,calendar:Z}=V0($),H==="start-of-day")throw new RangeError(`time is missing in string: ${$}`);if(O)throw new RangeError("Z designator not supported for PlainTime");({hour:Y,minute:z,second:G,millisecond:U,microsecond:W,nanosecond:Q}=H)}if(L3(Y,z,G,U,W,Q),/[tT ][0-9][0-9]/.test($))return{hour:Y,minute:z,second:G,millisecond:U,microsecond:W,nanosecond:Q,calendar:Z};try{let{month:H,day:O}=WV($);RX(1972,H,O)}catch{try{let{year:H,month:O}=UV($);RX(H,O,1)}catch{return{hour:Y,minute:z,second:G,millisecond:U,microsecond:W,nanosecond:Q,calendar:Z}}}throw new RangeError(`invalid RFC 9557 time-only string ${$}; may need a T prefix`)}function UV($){let X=hS.exec($),Y,z,G,U;if(X){G=N3(X[3]);let W=X[1];if(W==="-000000")throw new RangeError(`invalid RFC 9557 string: ${$}`);if(Y=+W,z=+X[2],U=1,G!==void 0&&G!=="iso8601")throw new RangeError("YYYY-MM format is only valid with iso8601 calendar")}else{let W;if({year:Y,month:z,calendar:G,day:U,z:W}=V0($),W)throw new RangeError("Z designator not supported for PlainYearMonth")}return{year:Y,month:z,calendar:G,referenceISODay:U}}function WV($){let X=gS.exec($),Y,z,G,U;if(X){if(G=N3(X[3]),Y=+X[1],z=+X[2],G!==void 0&&G!=="iso8601")throw new RangeError("MM-DD format is only valid with iso8601 calendar")}else{let W;if({month:Y,day:z,calendar:G,year:U,z:W}=V0($),W)throw new RangeError("Z designator not supported for PlainMonthDay")}return{month:Y,day:z,calendar:G,referenceISOYear:U}}var MJ=new RegExp(`^${a9.source}$`,"i"),LJ=new RegExp(`^${/([+-])([01][0-9]|2[0-3])(?::?([0-5][0-9])?)?/.source}$`);function JJ($){let X=sS.test($)?"Seconds not allowed in offset time zone":"Invalid time zone";throw new RangeError(`${X}: ${$}`)}function T8($){return MJ.test($)||JJ($),LJ.test($)?{offsetMinutes:U2($)/60000000000}:{tzName:$}}function g9($,X,Y,z){let G=$,U=X,W=Y;switch(z){case"reject":RX(G,U,W);break;case"constrain":({year:G,month:U,day:W}=fJ(G,U,W))}return{year:G,month:U,day:W}}function E3($,X,Y,z,G,U,W){let Q=$,Z=X,H=Y,O=z,w=G,V=U;switch(W){case"reject":L3(Q,Z,H,O,w,V);break;case"constrain":Q=C4(Q,0,23),Z=C4(Z,0,59),H=C4(H,0,59),O=C4(O,0,999),w=C4(w,0,999),V=C4(V,0,999)}return{hour:Q,minute:Z,second:H,millisecond:O,microsecond:w,nanosecond:V}}function AJ($){if(!E6($))throw new TypeError("invalid duration-like");let X={years:void 0,months:void 0,weeks:void 0,days:void 0,hours:void 0,minutes:void 0,seconds:void 0,milliseconds:void 0,microseconds:void 0,nanoseconds:void 0},Y=!1;for(let z=0;z<$3.length;z++){let G=$3[z],U=$[G];U!==void 0&&(Y=!0,X[G]=g1(U))}if(!Y)throw new TypeError("invalid duration-like");return X}function Z4({years:$,months:X,weeks:Y,days:z},G,U,W){return{years:$,months:W??X,weeks:U??Y,days:G??z}}function k$($,X){return{isoDate:$,time:X}}function x$($){return u0($,"overflow",["constrain","reject"],"constrain")}function y9($){return u0($,"disambiguation",["compatible","earlier","later","reject"],"compatible")}function u1($,X){return u0($,"roundingMode",["ceil","floor","expand","trunc","halfCeil","halfFloor","halfExpand","halfTrunc","halfEven"],X)}function tz($,X){return u0($,"offset",["prefer","use","ignore","reject"],X)}function e9($){return u0($,"calendarName",["auto","always","never","critical"],"auto")}function G2($){let X=$.roundingIncrement;if(X===void 0)return 1;let Y=M$(X);if(Y<1||Y>1e9)throw new RangeError(`roundingIncrement must be at least 1 and at most 1e9, not ${X}`);return Y}function z2($,X,Y){let z=Y?X:X-1;if($>z)throw new RangeError(`roundingIncrement must be at least 1 and less than ${z}, not ${$}`);if(X%$!=0)throw new RangeError(`Rounding increment must divide evenly into ${X}`)}function $5($){let X=$.fractionalSecondDigits;if(X===void 0)return"auto";if(typeof X!="number"){if(D3(X)!=="auto")throw new RangeError(`fractionalSecondDigits must be 'auto' or 0 through 9, not ${X}`);return"auto"}let Y=Math.floor(X);if(!Number.isFinite(Y)||Y<0||Y>9)throw new RangeError(`fractionalSecondDigits must be 'auto' or 0 through 9, not ${X}`);return Y}function X5($,X){switch($){case"minute":return{precision:"minute",unit:"minute",increment:1};case"second":return{precision:0,unit:"second",increment:1};case"millisecond":return{precision:3,unit:"millisecond",increment:1};case"microsecond":return{precision:6,unit:"microsecond",increment:1};case"nanosecond":return{precision:9,unit:"nanosecond",increment:1}}switch(X){case"auto":return{precision:X,unit:"nanosecond",increment:1};case 0:return{precision:X,unit:"second",increment:1};case 1:case 2:case 3:return{precision:X,unit:"millisecond",increment:10**(3-X)};case 4:case 5:case 6:return{precision:X,unit:"microsecond",increment:10**(6-X)};case 7:case 8:case 9:return{precision:X,unit:"nanosecond",increment:10**(9-X)};default:throw new RangeError(`fractionalSecondDigits must be 'auto' or 0 through 9, not ${X}`)}}var p0=Symbol("~required~");function i4($,X,Y,z,G=[]){let U=[];for(let H=0;H<oY.length;H++){let O=oY[H],w=O[1],V=O[2];Y!=="datetime"&&Y!==V||U.push(w)}U=U.concat(G);let W=z;W===p0?W=void 0:W!==void 0&&U.push(W);let Q=[];Q=Q.concat(U);for(let H=0;H<U.length;H++){let O=U[H],w=oS[O];w!==void 0&&Q.push(w)}let Z=u0($,X,Q,W);if(Z===void 0&&z===p0)throw new RangeError(`${X} is required`);return Z&&Z in qL?qL[Z]:Z}function bw($){let X=$.relativeTo;if(X===void 0)return{};let Y,z,G,U,W,Q="option",Z=!1;if(E6(X)){if(v$(X))return{zonedRelativeTo:X};if(D6(X))return{plainRelativeTo:X};if(e$(X))return{plainRelativeTo:j4(E(X,W6).isoDate,E(X,p))};G=W5(X);let H=E1(G,X,["year","month","monthCode","day"],["hour","minute","second","millisecond","microsecond","nanosecond","offset","timeZone"],[]);({isoDate:Y,time:z}=G5(G,H,"constrain")),{offset:W,timeZone:U}=H,W===void 0&&(Q="wall")}else{let H,O,w,V,D;if({year:w,month:V,day:D,time:z,calendar:G,tzAnnotation:H,offset:W,z:O}=V0(g6(X)),H)U=B4(H),O?Q="exact":W||(Q="wall"),Z=!0;else if(O)throw new RangeError("Z designator not supported for PlainDate relativeTo; either remove the Z or add a bracketed time zone");G||(G="iso8601"),G=S4(G),Y={year:w,month:V,day:D}}return U===void 0?{plainRelativeTo:j4(Y,G)}:{zonedRelativeTo:Q4(X3(Y,z,Q,Q==="option"?U2(W):0,U,"compatible","reject",Z),U,G)}}function b0($){return E($,A4)!==0?"year":E($,K4)!==0?"month":E($,p4)!==0?"week":E($,_4)!==0?"day":E($,q4)!==0?"hour":E($,T4)!==0?"minute":E($,R4)!==0?"second":E($,P4)!==0?"millisecond":E($,v4)!==0?"microsecond":"nanosecond"}function y0($,X){return h9.indexOf($)>h9.indexOf(X)?X:$}function U0($){return $==="year"||$==="month"||$==="week"}function f0($){return U0($)||$==="day"?"date":"time"}function C8($){return X4("%calendarImpl%")($)}function Y5($){return X4("%calendarImpl%")(E($,p))}function I4($,X,Y="date"){let z=Object.create(null),G=C8($).isoToDate(X,{year:!0,monthCode:!0,day:!0});return z.monthCode=G.monthCode,Y!=="month-day"&&Y!=="date"||(z.day=G.day),Y!=="year-month"&&Y!=="date"||(z.year=G.year),z}function E1($,X,Y,z,G){let U=C8($).extraFields(Y),W=Y.concat(z,U),Q=Object.create(null),Z=!1;W.sort();for(let H=0;H<W.length;H++){let O=W[H],w=X[O];if(w!==void 0)Z=!0,Q[O]=rS[O](w);else if(G!=="partial"){if(G.includes(O))throw new TypeError(`required property '${O}' missing or undefined`);Q[O]=nS[O]}}if(G==="partial"&&!Z)throw new TypeError("no supported properties found");return Q}function rw($,X="complete"){let Y=["hour","microsecond","millisecond","minute","nanosecond","second"],z=!1,G=Object.create(null);for(let U=0;U<Y.length;U++){let W=Y[U],Q=$[W];Q!==void 0?(G[W]=M$(Q),z=!0):X==="complete"&&(G[W]=0)}if(!z)throw new TypeError("invalid time-like");return G}function j9($,X){if(E6($)){if(D6($))return x$(W$(X)),j4(E($,E$),E($,p));if(v$($)){let Z=T1(E($,m$),E($,N$));return x$(W$(X)),j4(Z.isoDate,E($,p))}if(e$($))return x$(W$(X)),j4(E($,W6).isoDate,E($,p));let Q=W5($);return j4(v8(Q,E1(Q,$,["year","month","monthCode","day"],[],[]),x$(W$(X))),Q)}let{year:Y,month:z,day:G,calendar:U,z:W}=V0(g6($));if(W)throw new RangeError("Z designator not supported for PlainDate");return U||(U="iso8601"),U=S4(U),x$(W$(X)),j4({year:Y,month:z,day:G},U)}function G5($,X,Y){return k$(v8($,X,Y),E3(X.hour,X.minute,X.second,X.millisecond,X.microsecond,X.nanosecond,Y))}function B9($,X){let Y,z,G;if(E6($)){if(e$($))return x$(W$(X)),K1(E($,W6),E($,p));if(v$($)){let Q=T1(E($,m$),E($,N$));return x$(W$(X)),K1(Q,E($,p))}if(D6($))return x$(W$(X)),K1(k$(E($,E$),{deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0}),E($,p));G=W5($);let U=E1(G,$,["year","month","monthCode","day"],["hour","minute","second","millisecond","microsecond","nanosecond"],[]),W=x$(W$(X));({isoDate:Y,time:z}=G5(G,U,W))}else{let U,W,Q,Z;if({year:W,month:Q,day:Z,time:z,calendar:G,z:U}=V0(g6($)),U)throw new RangeError("Z designator not supported for PlainDateTime");z==="start-of-day"&&(z={deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0}),OV(W,Q,Z,z.hour,z.minute,z.second,z.millisecond,z.microsecond,z.nanosecond),G||(G="iso8601"),G=S4(G),x$(W$(X)),Y={year:W,month:Q,day:Z}}return K1(k$(Y,z),G)}function q1($){let X=X4("%Temporal.Duration%");if(V6($))return new X(E($,A4),E($,K4),E($,p4),E($,_4),E($,q4),E($,T4),E($,R4),E($,P4),E($,v4),E($,d4));if(!E6($))return function(G){let{years:U,months:W,weeks:Q,days:Z,hours:H,minutes:O,seconds:w,milliseconds:V,microseconds:D,nanoseconds:N}=function(F){let L=mS.exec(F);if(!L)throw new RangeError(`invalid duration: ${F}`);if(L.every((u,Q$)=>Q$<2||u===void 0))throw new RangeError(`invalid duration: ${F}`);let K=L[1]==="-"?-1:1,q=L[2]===void 0?0:M$(L[2])*K,R=L[3]===void 0?0:M$(L[3])*K,_=L[4]===void 0?0:M$(L[4])*K,v=L[5]===void 0?0:M$(L[5])*K,x=L[6]===void 0?0:M$(L[6])*K,S=L[7],m=L[8],$$=L[9],I=L[10],Y$=L[11],l=0,U$=0,K$=0;if(S!==void 0){if(m??$$??I??Y$)throw new RangeError("only the smallest unit can be fractional");K$=3600*M$((S+"000000000").slice(0,9))*K}else if(l=m===void 0?0:M$(m)*K,$$!==void 0){if(I??Y$)throw new RangeError("only the smallest unit can be fractional");K$=60*M$(($$+"000000000").slice(0,9))*K}else U$=I===void 0?0:M$(I)*K,Y$!==void 0&&(K$=M$((Y$+"000000000").slice(0,9))*K);let b$=K$%1000,K6=Math.trunc(K$/1000)%1000,Y4=Math.trunc(K$/1e6)%1000;return U$+=Math.trunc(K$/1e9)%60,l+=Math.trunc(K$/60000000000),J3(q,R,_,v,x,l,U$,Y4,K6,b$),{years:q,months:R,weeks:_,days:v,hours:x,minutes:l,seconds:U$,milliseconds:Y4,microseconds:K6,nanoseconds:b$}}(G);return new(X4("%Temporal.Duration%"))(U,W,Q,Z,H,O,w,V,D,N)}(g6($));let Y={years:0,months:0,weeks:0,days:0,hours:0,minutes:0,seconds:0,milliseconds:0,microseconds:0,nanoseconds:0},z=AJ($);for(let G=0;G<$3.length;G++){let U=$3[G],W=z[U];W!==void 0&&(Y[U]=W)}return new X(Y.years,Y.months,Y.weeks,Y.days,Y.hours,Y.minutes,Y.seconds,Y.milliseconds,Y.microseconds,Y.nanoseconds)}function I9($){let X;if(E6($)){if(s6($)||v$($))return y1(E($,N$));X=lw($)}else X=$;let{year:Y,month:z,day:G,time:U,offset:W,z:Q}=function(F){let L=V0(F);if(!L.z&&!L.offset)throw new RangeError("Temporal.Instant requires a time zone offset");return L}(g6(X)),{hour:Z=0,minute:H=0,second:O=0,millisecond:w=0,microsecond:V=0,nanosecond:D=0}=U==="start-of-day"?{}:U,N=r9(Y,z,G,Z,H,O,w,V,D-(Q?0:U2(W)));return iY(N.isoDate),y1($4(N))}function RL($,X){if(E6($)){if(O1($))return x$(W$(X)),dY(E($,E$),E($,p));let Q;return x4($,p)?Q=E($,p):(Q=$.calendar,Q===void 0&&(Q="iso8601"),Q=U5(Q)),dY(Y3(Q,E1(Q,$,["year","month","monthCode","day"],[],[]),x$(W$(X))),Q)}let{month:Y,day:z,referenceISOYear:G,calendar:U}=WV(g6($));if(U===void 0&&(U="iso8601"),U=S4(U),x$(W$(X)),U==="iso8601")return dY({year:1972,month:Y,day:z},U);let W={year:G,month:Y,day:z};return IX(W),W=Y3(U,I4(U,W,"month-day"),"constrain"),dY(W,U)}function _8($,X){let Y;if(E6($)){if(J6($))return x$(W$(X)),h0(E($,N6));if(e$($))return x$(W$(X)),h0(E($,W6).time);if(v$($)){let H=T1(E($,m$),E($,N$));return x$(W$(X)),h0(H.time)}let{hour:z,minute:G,second:U,millisecond:W,microsecond:Q,nanosecond:Z}=rw($);Y=E3(z,G,U,W,Q,Z,x$(W$(X)))}else Y=FJ(g6($)),x$(W$(X));return h0(Y)}function KJ($){return $===void 0?{deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0}:E(_8($),N6)}function x9($,X){if(E6($)){if(e6($))return x$(W$(X)),lY(E($,E$),E($,p));let Q=W5($);return lY(d9(Q,E1(Q,$,["year","month","monthCode"],[],[]),x$(W$(X))),Q)}let{year:Y,month:z,referenceISODay:G,calendar:U}=UV(g6($));U===void 0&&(U="iso8601"),U=S4(U),x$(W$(X));let W={year:Y,month:z,day:G};return wV(W),W=d9(U,I4(U,W,"year-month"),"constrain"),lY(W,U)}function X3($,X,Y,z,G,U,W,Q){if(X==="start-of-day")return A8(G,$);let Z=k$($,X);if(Y==="wall"||W==="ignore")return H4(G,Z,U);if(Y==="exact"||W==="use"){let w=r9($.year,$.month,$.day,X.hour,X.minute,X.second,X.millisecond,X.microsecond,X.nanosecond-z);iY(w.isoDate);let V=$4(w);return O0(V),V}iY($);let H=$4(Z),O=l9(G,Z);for(let w=0;w<O.length;w++){let V=O[w],D=B.toNumber(B.subtract(H,V)),N=q8(D,60000000000,"halfExpand");if(D===z||Q&&N===z)return V}if(W==="reject"){let w=nw(z),V=i9(Z,"iso8601","auto");throw new RangeError(`Offset ${w} is invalid for ${V} in ${G}`)}return BJ(O,G,Z,U)}function S9($,X){let Y,z,G,U,W,Q,Z,H=!1,O="option";if(E6($)){if(v$($)){let F=W$(X);return y9(F),tz(F,"reject"),x$(F),Q4(E($,N$),E($,m$),E($,p))}W=W5($);let V=E1(W,$,["year","month","monthCode","day"],["hour","minute","second","millisecond","microsecond","nanosecond","offset","timeZone"],["timeZone"]);({offset:U,timeZone:G}=V),U===void 0&&(O="wall");let D=W$(X);Q=y9(D),Z=tz(D,"reject");let N=x$(D);({isoDate:Y,time:z}=G5(W,V,N))}else{let V,D,N,F,L;({year:N,month:F,day:L,time:z,tzAnnotation:V,offset:U,z:D,calendar:W}=function(q){let R=V0(q);if(!R.tzAnnotation)throw new RangeError("Temporal.ZonedDateTime requires a time zone ID in brackets");return R}(g6($))),G=B4(V),D?O="exact":U||(O="wall"),W||(W="iso8601"),W=S4(W),H=!0;let K=W$(X);Q=y9(K),Z=tz(K,"reject"),x$(K),Y={year:N,month:F,day:L}}let w=0;return O==="option"&&(w=U2(U)),Q4(X3(Y,z,O,w,G,Q,Z,H),G,W)}function _J($,X,Y){IX(X),d0($),R$($,E$,X),R$($,p,Y),R$($,eL,!0)}function j4($,X){let Y=X4("%Temporal.PlainDate%"),z=Object.create(Y.prototype);return _J(z,$,X),z}function qJ($,X,Y){PX(X),d0($),R$($,W6,X),R$($,p,Y)}function K1($,X){let Y=X4("%Temporal.PlainDateTime%"),z=Object.create(Y.prototype);return qJ(z,$,X),z}function TJ($,X,Y){IX(X),d0($),R$($,E$,X),R$($,p,Y),R$($,XJ,!0)}function dY($,X){let Y=X4("%Temporal.PlainMonthDay%"),z=Object.create(Y.prototype);return TJ(z,$,X),z}function RJ($,X){d0($),R$($,N6,X)}function h0($){let X=X4("%Temporal.PlainTime%"),Y=Object.create(X.prototype);return RJ(Y,$),Y}function PJ($,X,Y){wV(X),d0($),R$($,E$,X),R$($,p,Y),R$($,$J,!0)}function lY($,X){let Y=X4("%Temporal.PlainYearMonth%"),z=Object.create(Y.prototype);return PJ(z,$,X),z}function vJ($,X){O0(X),d0($),R$($,N$,X)}function y1($){let X=X4("%Temporal.Instant%"),Y=Object.create(X.prototype);return vJ(Y,$),Y}function CJ($,X,Y,z){O0(X),d0($),R$($,N$,X),R$($,m$,Y),R$($,p,z)}function Q4($,X,Y="iso8601"){let z=X4("%Temporal.ZonedDateTime%"),G=Object.create(z.prototype);return CJ(G,$,X,Y),G}function PL($){return iw.filter((X)=>$[X]!==void 0)}function TX($,X,Y){let z=PL(Y),G=C8($).fieldKeysToIgnore(z),U=Object.create(null),W=PL(X);for(let Q=0;Q<iw.length;Q++){let Z,H=iw[Q];W.includes(H)&&!G.includes(H)&&(Z=X[H]),z.includes(H)&&(Z=Y[H]),Z!==void 0&&(U[H]=Z)}return U}function D1($,X,Y,z){let G=C8($).dateAdd(X,Y,z);return IX(G),G}function z5($,X,Y,z){return C8($).dateUntil(X,Y,z)}function U5($){if(E6($)&&x4($,p))return E($,p);let X=g6($);try{return S4(X)}catch{}let Y;try{({calendar:Y}=V0(X))}catch{try{({calendar:Y}=FJ(X))}catch{try{({calendar:Y}=UV(X))}catch{({calendar:Y}=WV(X))}}}return Y||(Y="iso8601"),S4(Y)}function W5($){if(x4($,p))return E($,p);let{calendar:X}=$;return X===void 0?"iso8601":U5(X)}function H0($,X){return S4($)===S4(X)}function v8($,X,Y){let z=C8($);z.resolveFields(X,"date");let G=z.dateToISO(X,Y);return IX(G),G}function d9($,X,Y){let z=C8($);z.resolveFields(X,"year-month"),X.day=1;let G=z.dateToISO(X,Y);return wV(G),G}function Y3($,X,Y){let z=C8($);z.resolveFields(X,"month-day");let G=z.monthDayToISOReferenceDate(X,Y);return IX(G),G}function B4($){if(E6($)&&v$($))return E($,m$);let X=g6($);if(X==="UTC")return"UTC";let{tzName:Y,offsetMinutes:z}=function(U){let{tzAnnotation:W,offset:Q,z:Z}=function(H){if(MJ.test(H))return{tzAnnotation:H,offset:void 0,z:!1};try{let{tzAnnotation:O,offset:w,z:V}=V0(H);if(V||O||w)return{tzAnnotation:O,offset:w,z:V}}catch{}JJ(H)}(U);return W?T8(W):Z?T8("UTC"):Q?T8(Q):void 0}(X);if(z!==void 0)return QV(z);let G=G3(Y);if(!G)throw new RangeError(`Unrecognized time zone ${Y}`);return G.identifier}function jJ($,X){if($===X)return!0;let Y=T8($).offsetMinutes,z=T8(X).offsetMinutes;if(Y===void 0&&z===void 0){let G=G3(X);if(!G)return!1;let U=G3($);return!!U&&U.primaryIdentifier===G.primaryIdentifier}return Y===z}function g0($,X){let Y=T8($).offsetMinutes;return Y!==void 0?60000000000*Y:ow($,X)}function nw($){let X=$<0?"-":"+",Y=Math.abs($),z=Math.floor(Y/3600000000000),G=Math.floor(Y/60000000000)%60,U=Math.floor(Y/1e9)%60,W=Y%1e9;return`${X}${F3(z,G,U,W,U===0&&W===0?"minute":"auto")}`}function T1($,X){let Y=g0($,X),{isoDate:{year:z,month:G,day:U},time:{hour:W,minute:Q,second:Z,millisecond:H,microsecond:O,nanosecond:w}}=SJ(X);return r9(z,G,U,W,Q,Z,H,O,w+Y)}function H4($,X,Y){return BJ(l9($,X),$,X,Y)}function BJ($,X,Y,z){let G=$.length;if(G===1)return $[0];if(G)switch(z){case"compatible":case"earlier":return $[0];case"later":return $[G-1];case"reject":throw new RangeError("multiple instants found")}if(z==="reject")throw new RangeError("multiple instants found");let U=$4(Y),W=B.subtract(U,R8);O0(W);let Q=g0(X,W),Z=B.add(U,R8);O0(Z);let H=g0(X,Z)-Q;switch(z){case"earlier":{let O=C$.fromComponents(0,0,0,0,0,-H),w=aY(Y.time,O);return l9(X,k$(r4(Y.isoDate.year,Y.isoDate.month,Y.isoDate.day+w.deltaDays),w))[0]}case"compatible":case"later":{let O=C$.fromComponents(0,0,0,0,0,H),w=aY(Y.time,O),V=l9(X,k$(r4(Y.isoDate.year,Y.isoDate.month,Y.isoDate.day+w.deltaDays),w));return V[V.length-1]}}}function l9($,X){if($==="UTC")return iY(X.isoDate),[$4(X)];let Y=T8($).offsetMinutes;if(Y!==void 0){let z=r9(X.isoDate.year,X.isoDate.month,X.isoDate.day,X.time.hour,X.time.minute-Y,X.time.second,X.time.millisecond,X.time.microsecond,X.time.nanosecond);iY(z.isoDate);let G=$4(z);return O0(G),[G]}return iY(X.isoDate),function(z,G){let U=$4(G),W=B.subtract(U,R8);B.lessThan(W,c9)&&(W=U);let Q=B.add(U,R8);B.greaterThan(Q,nY)&&(Q=U);let Z=ow(z,W),H=ow(z,Q);return(Z===H?[Z]:[Z,H]).map((w)=>{let V=B.subtract(U,B.BigInt(w)),D=function(N,F){let{epochMilliseconds:L,time:{millisecond:K,microsecond:q,nanosecond:R}}=SJ(F),{year:_,month:v,day:x,hour:S,minute:m,second:$$}=kJ(N,L);return r9(_,v,x,S,m,$$,K,q,R)}(z,V);if(sY(G,D)===0)return O0(V),V}).filter((w)=>w!==void 0)}($,X)}function A8($,X){let Y=k$(X,{deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0}),z=l9($,Y);if(z.length)return z[0];let G=$4(Y),U=B.subtract(G,R8);return O0(U),HV($,U)}function Q5($){let X;return X=$<0||$>9999?($<0?"-":"+")+p9(Math.abs($),6):p9($,4),X}function N1($){return p9($,2)}function IJ($,X){let Y;if(X==="auto"){if($===0)return"";Y=p9($,9).replace(/0+$/,"")}else{if(X===0)return"";Y=p9($,9).slice(0,X)}return`.${Y}`}function F3($,X,Y,z,G){let U=`${N1($)}:${N1(X)}`;return G==="minute"||(U+=`:${N1(Y)}`,U+=IJ(z,G)),U}function vL($,X,Y){let z=X;z===void 0&&(z="UTC");let G=E($,N$),U=i9(T1(z,G),"iso8601",Y,"never"),W="Z";return X!==void 0&&(W=xJ(g0(z,G))),`${U}${W}`}function oz($,X){let Y=E($,A4),z=E($,K4),G=E($,p4),U=E($,_4),W=E($,q4),Q=E($,T4),Z=U3($),H="";Y!==0&&(H+=`${Math.abs(Y)}Y`),z!==0&&(H+=`${Math.abs(z)}M`),G!==0&&(H+=`${Math.abs(G)}W`),U!==0&&(H+=`${Math.abs(U)}D`);let O="";W!==0&&(O+=`${Math.abs(W)}H`),Q!==0&&(O+=`${Math.abs(Q)}M`);let w=C$.fromComponents(0,0,E($,R4),E($,P4),E($,v4),E($,d4));w.isZero()&&!["second","millisecond","microsecond","nanosecond"].includes(b0($))&&X==="auto"||(O+=`${Math.abs(w.sec)}${IJ(Math.abs(w.subsec),X)}S`);let V=`${Z<0?"-":""}P${H}`;return O&&(V=`${V}T${O}`),V}function CL($,X="auto"){let{year:Y,month:z,day:G}=E($,E$);return`${Q5(Y)}-${N1(z)}-${N1(G)}${s9(E($,p),X)}`}function jL({hour:$,minute:X,second:Y,millisecond:z,microsecond:G,nanosecond:U},W){return F3($,X,Y,1e6*z+1000*G+U,W)}function i9($,X,Y,z="auto"){let{isoDate:{year:G,month:U,day:W},time:{hour:Q,minute:Z,second:H,millisecond:O,microsecond:w,nanosecond:V}}=$;return`${Q5(G)}-${N1(U)}-${N1(W)}T${F3(Q,Z,H,1e6*O+1000*w+V,Y)}${s9(X,z)}`}function BL($,X="auto"){let{year:Y,month:z,day:G}=E($,E$),U=`${N1(z)}-${N1(G)}`,W=E($,p);X!=="always"&&X!=="critical"&&W==="iso8601"||(U=`${Q5(Y)}-${U}`);let Q=s9(W,X);return Q&&(U+=Q),U}function IL($,X="auto"){let{year:Y,month:z,day:G}=E($,E$),U=`${Q5(Y)}-${N1(z)}`,W=E($,p);X!=="always"&&X!=="critical"&&W==="iso8601"||(U+=`-${N1(G)}`);let Q=s9(W,X);return Q&&(U+=Q),U}function xL($,X,Y="auto",z="auto",G="auto",U=void 0){let W=E($,N$);if(U){let{unit:O,increment:w,roundingMode:V}=U;W=ew(W,w,O,V)}let Q=E($,m$),Z=g0(Q,W),H=i9(T1(Q,W),"iso8601",X,"never");return G!=="never"&&(H+=xJ(Z)),z!=="never"&&(H+=`[${z==="critical"?"!":""}${Q}]`),H+=s9(E($,p),Y),H}function SL($){return LJ.test($)}function U2($){let X=eS.exec($);if(!X)throw new RangeError(`invalid time zone offset: ${$}; must match \xB1HH:MM[:SS.SSSSSSSSS]`);return(X[1]==="-"?-1:1)*(1e9*(60*(60*+X[2]+ +(X[3]||0))+ +(X[4]||0))+ +((X[5]||0)+"000000000").slice(0,9))}var T9,aS=Object.assign(Object.create(null),{"/":!0,"-":!0,_:!0});function G3($){if(T9===void 0){let U=Intl.supportedValuesOf?.("timeZone");if(U){T9=new Map;for(let W=0;W<U.length;W++){let Q=U[W];T9.set(n9(Q),Q)}}else T9=null}let X=n9($),Y=T9?.get(X);if(Y)return{identifier:Y,primaryIdentifier:Y};try{Y=EJ($).resolvedOptions().timeZone}catch{return}if(X==="antarctica/south_pole"&&(Y="Antarctica/McMurdo"),iS.has($))throw new RangeError(`${$} is a legacy time zone identifier from ICU. Use ${Y} instead`);let z=[...X].map((U,W)=>W===0||aS[X[W-1]]?U.toUpperCase():U).join("").split("/");if(z.length===1)return X==="gb-eire"?{identifier:"GB-Eire",primaryIdentifier:Y}:{identifier:X.length<=3||/[-0-9]/.test(X)?X.toUpperCase():z[0],primaryIdentifier:Y};if(z[0]==="Etc")return{identifier:`Etc/${["Zulu","Greenwich","Universal"].includes(z[1])?z[1]:z[1].toUpperCase()}`,primaryIdentifier:Y};if(z[0]==="Us")return{identifier:`US/${z[1]}`,primaryIdentifier:Y};let G=new Map([["Act","ACT"],["Lhi","LHI"],["Nsw","NSW"],["Dar_Es_Salaam","Dar_es_Salaam"],["Port_Of_Spain","Port_of_Spain"],["Port-Au-Prince","Port-au-Prince"],["Isle_Of_Man","Isle_of_Man"],["Comodrivadavia","ComodRivadavia"],["Knox_In","Knox_IN"],["Dumontdurville","DumontDUrville"],["Mcmurdo","McMurdo"],["Denoronha","DeNoronha"],["Easterisland","EasterIsland"],["Bajanorte","BajaNorte"],["Bajasur","BajaSur"]]);return z[1]=G.get(z[1])??z[1],z.length>2&&(z[2]=G.get(z[2])??z[2]),{identifier:z.join("/"),primaryIdentifier:Y}}function _X($,X){let{year:Y,month:z,day:G,hour:U,minute:W,second:Q}=kJ($,X),Z=X%1000;return Z<0&&(Z+=1000),1e6*(ZV({isoDate:{year:Y,month:z,day:G},time:{hour:U,minute:W,second:Q,millisecond:Z}})-X)}function ow($,X){return _X($,R1(X,"floor"))}function QV($){let X=$<0?"-":"+",Y=Math.abs($);return`${X}${F3(Math.floor(Y/60),Y%60,0,0,"minute")}`}function xJ($){return QV(q8($,uS,"halfExpand")/60000000000)}function ZV({isoDate:{year:$,month:X,day:Y},time:{hour:z,minute:G,second:U,millisecond:W}}){let Q=$%400,Z=($-Q)/400,H=new Date;return H.setUTCHours(z,G,U,W),H.setUTCFullYear(Q,X-1,Y),H.getTime()+dS*Z}function $4($){let X=ZV($),Y=1000*$.time.microsecond+$.time.nanosecond;return B.add(m1(X),B.BigInt(Y))}function SJ($){let X=R1($,"trunc"),Y=B.toNumber(B.remainder($,t9));Y<0&&(Y+=1e6,X-=1);let z=Math.floor(Y/1000)%1000,G=Y%1000,U=new Date(X);return{epochMilliseconds:X,isoDate:{year:U.getUTCFullYear(),month:U.getUTCMonth()+1,day:U.getUTCDate()},time:{hour:U.getUTCHours(),minute:U.getUTCMinutes(),second:U.getUTCSeconds(),millisecond:U.getUTCMilliseconds(),microsecond:z,nanosecond:G}}}function HV($,X){if($==="UTC")return null;let Y=R1(X,"floor");if(Y<f9)return HV($,m1(f9));let z=Date.now(),G=Math.max(Y,z)+366*P8*3,U=Y,W=_X($,U),Q=U,Z=W;for(;W===Z&&U<G;){if(Q=U+2*P8*7,Q>NJ)return null;Z=_X($,Q),W===Z&&(U=Q)}return W===Z?null:m1(dJ((H)=>_X($,H),U,Q,W,Z))}function tw($,X){if($==="UTC")return null;let Y=R1(X,"ceil"),z=Date.now(),G=z+366*P8*3;if(Y>G){let H=tw($,m1(G));if(H===null||B.lessThan(H,m1(z)))return H}if($==="Africa/Casablanca"||$==="Africa/El_Aaiun"){let H=Date.UTC(2088,0,1);if(H<Y)return tw($,m1(H))}let U=Y-1;if(U<f9)return null;let W=_X($,U),Q=U,Z=W;for(;W===Z&&U>f9;){if(Q=U-2*P8*7,Q<f9)return null;Z=_X($,Q),W===Z&&(U=Q)}return W===Z?null:m1(dJ((H)=>_X($,H),Q,U,Z,W))}function kJ($,X){return function(Y){let z=Y.split(/[^\w]+/);if(z.length!==7)throw new RangeError(`expected 7 parts in "${Y}`);let G=+z[0],U=+z[1],W=+z[2],Q=z[3];if(Q[0]==="b"||Q[0]==="B")W=1-W;else if(Q[0]!=="a"&&Q[0]!=="A")throw new RangeError(`Unknown era ${Q} in "${Y}`);let Z=z[4]==="24"?0:+z[4],H=+z[5],O=+z[6];if(!(Number.isFinite(W)&&Number.isFinite(G)&&Number.isFinite(U)&&Number.isFinite(Z)&&Number.isFinite(H)&&Number.isFinite(O)))throw new RangeError(`Invalid number in "${Y}`);return{year:W,month:G,day:U,hour:Z,minute:H,second:O}}(EJ($).format(X))}function z3($){return $!==void 0&&!($%4!=0||$%100==0&&$%400!=0)}function qX($,X){return{standard:[31,28,31,30,31,30,31,31,30,31,30,31],leapyear:[31,29,31,30,31,30,31,31,30,31,30,31]}[z3($)?"leapyear":"standard"][X-1]}function U3($){let X=[E($,A4),E($,K4),E($,p4),E($,_4),E($,q4),E($,T4),E($,R4),E($,P4),E($,v4),E($,d4)];for(let Y=0;Y<X.length;Y++){let z=X[Y];if(z!==0)return z<0?-1:1}return 0}function M3($){let X=["years","months","weeks","days"];for(let Y=0;Y<X.length;Y++){let z=$[X[Y]];if(z!==0)return z<0?-1:1}return 0}function bJ($){let X=M3($.date);return X!==0?X:$.time.sign()}function KX($,X){let Y=$,z=X;if(!Number.isFinite(Y)||!Number.isFinite(z))throw new RangeError("infinity is out of range");return z-=1,Y+=Math.floor(z/12),z%=12,z<0&&(z+=12),z+=1,{year:Y,month:z}}function r4($,X,Y){let z=$,G=X,U=Y;if(!Number.isFinite(U))throw new RangeError("infinity is out of range");({year:z,month:G}=KX(z,G));let W=146097;if(Math.abs(U)>W){let H=Math.trunc(U/W);z+=400*H,U-=H*W}let Q=0,Z=G>2?z:z-1;for(;Q=z3(Z)?366:365,U<-Q;)z-=1,Z-=1,U+=Q;for(Z+=1;Q=z3(Z)?366:365,U>Q;)z+=1,Z+=1,U-=Q;for(;U<1;)({year:z,month:G}=KX(z,G-1)),U+=qX(z,G);for(;U>qX(z,G);)U-=qX(z,G),{year:z,month:G}=KX(z,G+1);return{year:z,month:G,day:U}}function r9($,X,Y,z,G,U,W,Q,Z){let H=K8(z,G,U,W,Q,Z);return k$(r4($,X,Y+H.deltaDays),H)}function K8($,X,Y,z,G,U){let W,Q=$,Z=X,H=Y,O=z,w=G,V=U;({div:W,mod:V}=pY(V,3)),w+=W,V<0&&(w-=1,V+=1000),{div:W,mod:w}=pY(w,3),O+=W,w<0&&(O-=1,w+=1000),H+=Math.trunc(O/1000),O%=1000,O<0&&(H-=1,O+=1000),Z+=Math.trunc(H/60),H%=60,H<0&&(Z-=1,H+=60),Q+=Math.trunc(Z/60),Z%=60,Z<0&&(Q-=1,Z+=60);let D=Math.trunc(Q/24);return Q%=24,Q<0&&(D-=1,Q+=24),D+=0,Q+=0,Z+=0,H+=0,O+=0,w+=0,V+=0,{deltaDays:D,hour:Q,minute:Z,second:H,millisecond:O,microsecond:w,nanosecond:V}}function kL($,X){let Y=Z4($,0);if(M3(Y)===0)return $.days;let z=E(X,E$),G=D1(E(X,p),z,Y,"constrain"),U=vX(z.year,z.month-1,z.day),W=vX(G.year,G.month-1,G.day)-U;return $.days+W}function n4($){return new(X4("%Temporal.Duration%"))(-E($,A4),-E($,K4),-E($,p4),-E($,_4),-E($,q4),-E($,T4),-E($,R4),-E($,P4),-E($,v4),-E($,d4))}function C4($,X,Y){return Math.min(Y,Math.max(X,$))}function fJ($,X,Y){let z=C4(X,1,12);return{year:$,month:z,day:C4(Y,1,qX($,z))}}function i6($,X,Y){if($<X||$>Y)throw new RangeError(`value out of range: ${X} <= ${$} <= ${Y}`)}function RX($,X,Y){i6(X,1,12),i6(Y,1,qX($,X))}function IX($){PX(k$($,{deltaDays:0,hour:12,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0}))}function L3($,X,Y,z,G,U){i6($,0,23),i6(X,0,59),i6(Y,0,59),i6(z,0,999),i6(G,0,999),i6(U,0,999)}function OV($,X,Y,z,G,U,W,Q,Z){RX($,X,Y),L3(z,G,U,W,Q,Z)}function PX($){let X=$4($);(B.lessThan(X,cS)||B.greaterThan(X,pS))&&O0(X)}function aw($){$4($)}function O0($){if(B.lessThan($,c9)||B.greaterThan($,nY))throw new RangeError("date/time value is outside of supported range")}function wV({year:$,month:X}){i6($,AL,KL),$===AL?i6(X,4,12):$===KL&&i6(X,1,9)}function J3($,X,Y,z,G,U,W,Q,Z,H){let O=0,w=[$,X,Y,z,G,U,W,Q,Z,H];for(let K=0;K<w.length;K++){let q=w[K];if(q===1/0||q===-1/0)throw new RangeError("infinite values not allowed as duration fields");if(q!==0){let R=q<0?-1:1;if(O!==0&&R!==O)throw new RangeError("mixed-sign values not allowed as duration fields");O=R}}if(Math.abs($)>=4294967296||Math.abs(X)>=4294967296||Math.abs(Y)>=4294967296)throw new RangeError("years, months, and weeks must be < 2\xB3\xB2");let V=pY(Q,3),D=pY(Z,6),N=pY(H,9),F=pY(1e6*V.mod+1000*D.mod+N.mod,9).div,L=86400*z+3600*G+60*U+W+V.div+D.div+N.div+F;if(!Number.isSafeInteger(L))throw new RangeError("total of duration time units cannot exceed 9007199254740991.999999999 s")}function cY($){return{date:{years:E($,A4),months:E($,K4),weeks:E($,p4),days:E($,_4)},time:C$.fromComponents(E($,q4),E($,T4),E($,R4),E($,P4),E($,v4),E($,d4))}}function Q0($){let X=C$.fromComponents(E($,q4),E($,T4),E($,R4),E($,P4),E($,v4),E($,d4)).add24HourDays(E($,_4));return{date:{years:E($,A4),months:E($,K4),weeks:E($,p4),days:0},time:X}}function hJ($){let X=Q0($),Y=Math.trunc(X.time.sec/86400);return J3(X.date.years,X.date.months,X.date.weeks,Y,0,0,0,0,0,0),{...X.date,days:Y}}function _1($,X){let Y=$.time.sign(),z=$.time.abs().subsec,G=0,U=0,W=$.time.abs().sec,Q=0,Z=0,H=0;switch(X){case"year":case"month":case"week":case"day":G=Math.trunc(z/1000),z%=1000,U=Math.trunc(G/1000),G%=1000,W+=Math.trunc(U/1000),U%=1000,Q=Math.trunc(W/60),W%=60,Z=Math.trunc(Q/60),Q%=60,H=Math.trunc(Z/24),Z%=24;break;case"hour":G=Math.trunc(z/1000),z%=1000,U=Math.trunc(G/1000),G%=1000,W+=Math.trunc(U/1000),U%=1000,Q=Math.trunc(W/60),W%=60,Z=Math.trunc(Q/60),Q%=60;break;case"minute":G=Math.trunc(z/1000),z%=1000,U=Math.trunc(G/1000),G%=1000,W+=Math.trunc(U/1000),U%=1000,Q=Math.trunc(W/60),W%=60;break;case"second":G=Math.trunc(z/1000),z%=1000,U=Math.trunc(G/1000),G%=1000,W+=Math.trunc(U/1000),U%=1000;break;case"millisecond":G=Math.trunc(z/1000),z%=1000,U=Sw(W,3,Math.trunc(G/1000)),G%=1000,W=0;break;case"microsecond":G=Sw(W,6,Math.trunc(z/1000)),z%=1000,W=0;break;case"nanosecond":z=Sw(W,9,z),W=0}return new(X4("%Temporal.Duration%"))($.date.years,$.date.months,$.date.weeks,$.date.days+Y*H,Y*Z,Y*Q,Y*W,Y*U,Y*G,Y*z)}function m0($,X){return M3($),X.sign(),{date:$,time:X}}function vX($,X,Y){return ZV({isoDate:{year:$,month:X+1,day:Y},time:{hour:0,minute:0,second:0,millisecond:0}})/P8}function iY({year:$,month:X,day:Y}){if(Math.abs(vX($,X-1,Y))>1e8)throw new RangeError("date/time value is outside the supported range")}function VV($,X){let Y=X.hour-$.hour,z=X.minute-$.minute,G=X.second-$.second,U=X.millisecond-$.millisecond,W=X.microsecond-$.microsecond,Q=X.nanosecond-$.nanosecond;return C$.fromComponents(Y,z,G,U,W,Q)}function DV($,X,Y,z,G){let U=C$.fromEpochNsDiff(X,$);return U=W3(U,Y,z,G),m0({years:0,months:0,weeks:0,days:0},U)}function gJ($,X,Y,z){aw($),aw(X);let G=VV($.time,X.time),U=G.sign(),W=w0($.isoDate,X.isoDate),Q=X.isoDate;W===U&&(Q=r4(Q.year,Q.month,Q.day+U),G=G.add24HourDays(-U));let Z=y0("day",z),H=z5(Y,$.isoDate,Q,Z);return z!==Z&&(G=G.add24HourDays(H.days),H.days=0),m0(H,G)}function yJ($,X,Y,z,G){let U=B.subtract(X,$);if(B.equal(U,w1))return{date:{years:0,months:0,weeks:0,days:0},time:C$.ZERO};let W=B.lessThan(U,w1)?-1:1,Q=T1(Y,$),Z=T1(Y,X),H,O=0,w=W===1?2:1,V=VV(Q.time,Z.time);for(V.sign()===-W&&O++;O<=w;O++){H=k$(r4(Z.isoDate.year,Z.isoDate.month,Z.isoDate.day-O*W),Q.time);let N=H4(Y,H,"compatible");if(V=C$.fromEpochNsDiff(X,N),V.sign()!==-W)break}let D=y0("day",G);return m0(z5(z,Q.isoDate,H.isoDate,D),V)}function mJ($,X,Y,z,G,U,W,Q,Z){let H,O,w,V,D=X;switch(Q){case"year":{let l=q8(D.date.years,W,"trunc");H=l,O=l+W*$,w={years:H,months:0,weeks:0,days:0},V={...w,years:O};break}case"month":{let l=q8(D.date.months,W,"trunc");H=l,O=l+W*$,w=Z4(D.date,0,0,H),V=Z4(D.date,0,0,O);break}case"week":{let l=Z4(D.date,0,0),U$=D1(U,z.isoDate,l,"constrain"),K$=z5(U,U$,r4(U$.year,U$.month,U$.day+D.date.days),"week"),b$=q8(D.date.weeks+K$.weeks,W,"trunc");H=b$,O=b$+W*$,w=Z4(D.date,0,H),V=Z4(D.date,0,O);break}case"day":{let l=q8(D.date.days,W,"trunc");H=l,O=l+W*$,w=Z4(D.date,H),V=Z4(D.date,O);break}}let N=D1(U,z.isoDate,w,"constrain"),F=D1(U,z.isoDate,V,"constrain"),L,K,q=k$(N,z.time),R=k$(F,z.time);G?(L=H4(G,q,"compatible"),K=H4(G,R,"compatible")):(L=$4(q),K=$4(R));let _=C$.fromEpochNsDiff(Y,L),v=C$.fromEpochNsDiff(K,L),x=O3(Z,$<0?"negative":"positive"),S=_.add(_).abs().subtract(v.abs()).sign(),m=Math.abs(H)/W%2==0,$$=_.isZero()?Math.abs(H):_.cmp(v)?w3(Math.abs(H),Math.abs(O),S,m,x):Math.abs(O),I=new C$(B.add(B.multiply(v.totalNs,B.BigInt(H)),B.multiply(_.totalNs,B.BigInt(W*$)))).fdiv(v.totalNs),Y$=$$===Math.abs(O);return D={date:Y$?V:w,time:C$.ZERO},{nudgeResult:{duration:D,nudgedEpochNs:Y$?K:L,didExpandCalendarUnit:Y$},total:I}}function A3($,X,Y,z,G,U,W,Q,Z){let H=$,O=U0(Q)||z&&Q==="day",w=bJ(H)<0?-1:1,V;return O?{nudgeResult:V}=mJ(w,H,X,Y,z,G,W,Q,Z):V=z?function(D,N,F,L,K,q,R,_){let v=N,x=D1(K,F.isoDate,v.date,"constrain"),S=k$(x,F.time),m=k$(r4(x.year,x.month,x.day+D),F.time),$$=H4(L,S,"compatible"),I=H4(L,m,"compatible"),Y$=C$.fromEpochNsDiff(I,$$);if(Y$.sign()!==D)throw new RangeError("time zone returned inconsistent Instants");let l=B.BigInt(tY[R]*q),U$=v.time.round(l,_),K$=U$.subtract(Y$),b$=K$.sign()!==-D,K6,Y4;return b$?(K6=D,U$=K$.round(l,_),Y4=U$.addToEpochNs(I)):(K6=0,Y4=U$.addToEpochNs($$)),{duration:m0(Z4(v.date,v.date.days+K6),U$),nudgedEpochNs:Y4,didExpandCalendarUnit:b$}}(w,H,Y,z,G,W,Q,Z):function(D,N,F,L,K,q){let R=D,_=R.time.add24HourDays(R.date.days),v=_.round(B.BigInt(L*tY[K]),q),x=v.subtract(_),{quotient:S}=_.divmod(ez),{quotient:m}=v.divmod(ez),$$=Math.sign(m-S)===_.sign(),I=x.addToEpochNs(N),Y$=0,l=v;return f0(F)==="date"&&(Y$=m,l=v.add(C$.fromComponents(24*-m,0,0,0,0,0))),{duration:{date:Z4(R.date,Y$),time:l},nudgedEpochNs:I,didExpandCalendarUnit:$$}}(H,X,U,W,Q,Z),H=V.duration,V.didExpandCalendarUnit&&Q!=="week"&&(H=function(D,N,F,L,K,q,R,_){let v=N;if(_===R)return v;let x=h9.indexOf(R);for(let S=h9.indexOf(_)-1;S>=x;S--){let m=h9[S];if(m==="week"&&R!=="week")continue;let $$;switch(m){case"year":$$={years:v.date.years+D,months:0,weeks:0,days:0};break;case"month":{let l=v.date.months+D;$$=Z4(v.date,0,0,l);break}case"week":{let l=v.date.weeks+D;$$=Z4(v.date,0,l);break}}let I=k$(D1(q,L.isoDate,$$,"constrain"),L.time),Y$;if(Y$=K?H4(K,I,"compatible"):$4(I),az(F,Y$)===-D)break;v={date:$$,time:C$.ZERO}}return v}(w,H,V.nudgedEpochNs,Y,z,G,U,y0(Q,"day"))),H}function bL($,X,Y,z,G,U){return U0(U)||z&&U==="day"?mJ(bJ($)<0?-1:1,$,X,Y,z,G,1,U,"trunc").total:m9($.time.add24HourDays($.date.days),U)}function uJ($,X,Y,z,G,U,W){if(sY($,X)==0)return{date:{years:0,months:0,weeks:0,days:0},time:C$.ZERO};PX($),PX(X);let Q=gJ($,X,Y,z);return U==="nanosecond"&&G===1?Q:A3(Q,$4(X),$,null,Y,z,G,U,W)}function cJ($,X,Y,z,G,U,W,Q){if(f0(G)==="time")return DV($,X,U,W,Q);let Z=yJ($,X,Y,z,G);return W==="nanosecond"&&U===1?Z:A3(Z,X,T1(Y,$),Y,z,G,U,W,Q)}function W2($,X,Y,z,G,U){let W=oY.reduce((D,N)=>{let F=N[0],L=N[1],K=N[2];return Y!=="datetime"&&K!==Y||z.includes(L)||D.push(L,F),D},[]),Q=i4(X,"largestUnit",Y,"auto");if(z.includes(Q))throw new RangeError(`largestUnit must be one of ${W.join(", ")}, not ${Q}`);let Z=G2(X),H=u1(X,"trunc");$==="since"&&(H=function(D){switch(D){case"ceil":return"floor";case"floor":return"ceil";case"halfCeil":return"halfFloor";case"halfFloor":return"halfCeil";default:return D}}(H));let O=i4(X,"smallestUnit",Y,G);if(z.includes(O))throw new RangeError(`smallestUnit must be one of ${W.join(", ")}, not ${O}`);let w=y0(U,O);if(Q==="auto"&&(Q=w),y0(Q,O)!==Q)throw new RangeError(`largestUnit ${Q} cannot be smaller than smallestUnit ${O}`);let V={hour:24,minute:60,second:60,millisecond:1000,microsecond:1000,nanosecond:1000}[O];return V!==void 0&&z2(Z,V,!1),{largestUnit:Q,roundingIncrement:Z,roundingMode:H,smallestUnit:O}}function fL($,X,Y,z){let G=I9(Y),U=W2($,W$(z),"time",[],"nanosecond","second"),W=_1(DV(E(X,N$),E(G,N$),U.roundingIncrement,U.smallestUnit,U.roundingMode),U.largestUnit);return $==="since"&&(W=n4(W)),W}function hL($,X,Y,z){let G=j9(Y),U=E(X,p),W=E(G,p);if(!H0(U,W))throw new RangeError(`cannot compute difference between dates of ${U} and ${W} calendars`);let Q=W2($,W$(z),"date",[],"day","day"),Z=X4("%Temporal.Duration%"),H=E(X,E$),O=E(G,E$);if(w0(H,O)===0)return new Z;let w={date:z5(U,H,O,Q.largestUnit),time:C$.ZERO};if(Q.smallestUnit!=="day"||Q.roundingIncrement!==1){let D=k$(H,{deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0});w=A3(w,$4(k$(O,{deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0})),D,null,U,Q.largestUnit,Q.roundingIncrement,Q.smallestUnit,Q.roundingMode)}let V=_1(w,"day");return $==="since"&&(V=n4(V)),V}function gL($,X,Y,z){let G=B9(Y),U=E(X,p),W=E(G,p);if(!H0(U,W))throw new RangeError(`cannot compute difference between dates of ${U} and ${W} calendars`);let Q=W2($,W$(z),"datetime",[],"nanosecond","day"),Z=X4("%Temporal.Duration%"),H=E(X,W6),O=E(G,W6);if(sY(H,O)===0)return new Z;let w=_1(uJ(H,O,U,Q.largestUnit,Q.roundingIncrement,Q.smallestUnit,Q.roundingMode),Q.largestUnit);return $==="since"&&(w=n4(w)),w}function yL($,X,Y,z){let G=_8(Y),U=W2($,W$(z),"time",[],"nanosecond","hour"),W=VV(E(X,N6),E(G,N6));W=W3(W,U.roundingIncrement,U.smallestUnit,U.roundingMode);let Q=_1(m0({years:0,months:0,weeks:0,days:0},W),U.largestUnit);return $==="since"&&(Q=n4(Q)),Q}function mL($,X,Y,z){let G=x9(Y),U=E(X,p),W=E(G,p);if(!H0(U,W))throw new RangeError(`cannot compute difference between months of ${U} and ${W} calendars`);let Q=W2($,W$(z),"date",["week","day"],"month","year"),Z=X4("%Temporal.Duration%");if(w0(E(X,E$),E(G,E$))==0)return new Z;let H=I4(U,E(X,E$),"year-month");H.day=1;let O=v8(U,H,"constrain"),w=I4(U,E(G,E$),"year-month");w.day=1;let V=v8(U,w,"constrain"),D={date:Z4(z5(U,O,V,Q.largestUnit),0,0),time:C$.ZERO};if(Q.smallestUnit!=="month"||Q.roundingIncrement!==1){let F=k$(O,{deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0});D=A3(D,$4(k$(V,{deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0})),F,null,U,Q.largestUnit,Q.roundingIncrement,Q.smallestUnit,Q.roundingMode)}let N=_1(D,"day");return $==="since"&&(N=n4(N)),N}function uL($,X,Y,z){let G=S9(Y),U=E(X,p),W=E(G,p);if(!H0(U,W))throw new RangeError(`cannot compute difference between dates of ${U} and ${W} calendars`);let Q=W2($,W$(z),"datetime",[],"nanosecond","hour"),Z=E(X,N$),H=E(G,N$),O=X4("%Temporal.Duration%"),w;if(f0(Q.largestUnit)!=="date")w=_1(DV(Z,H,Q.roundingIncrement,Q.smallestUnit,Q.roundingMode),Q.largestUnit);else{let V=E(X,m$);if(!jJ(V,E(G,m$)))throw new RangeError("When calculating difference between time zones, largestUnit must be 'hours' or smaller because day lengths can vary between time zones due to DST or time zone offset changes.");if(B.equal(Z,H))return new O;w=_1(cJ(Z,H,V,U,Q.largestUnit,Q.roundingIncrement,Q.smallestUnit,Q.roundingMode),"hour")}return $==="since"&&(w=n4(w)),w}function aY({hour:$,minute:X,second:Y,millisecond:z,microsecond:G,nanosecond:U},W){let Q=Y,Z=U;return Q+=W.sec,Z+=W.subsec,K8($,X,Q,z,G,Z)}function sw($,X){let Y=X.addToEpochNs($);return O0(Y),Y}function k9($,X,Y,z,G="constrain"){if(M3(z.date)===0)return sw($,z.time);let U=T1(X,$);return sw(H4(X,k$(D1(Y,U.isoDate,z.date,G),U.time),"compatible"),z.time)}function cL($,X,Y){let z=q1(Y);$==="subtract"&&(z=n4(z));let G=y0(b0(X),b0(z));if(U0(G))throw new RangeError("For years, months, or weeks arithmetic, use date arithmetic relative to a starting point");let U=Q0(X),W=Q0(z);return _1(m0({years:0,months:0,weeks:0,days:0},U.time.add(W.time)),G)}function pL($,X,Y){let z=q1(Y);$==="subtract"&&(z=n4(z));let G=b0(z);if(f0(G)==="date")throw new RangeError(`Duration field ${G} not supported by Temporal.Instant. Try Temporal.ZonedDateTime instead.`);let U=Q0(z);return y1(sw(E(X,N$),U.time))}function dL($,X,Y,z){let G=E(X,p),U=q1(Y);$==="subtract"&&(U=n4(U));let W=hJ(U),Q=x$(W$(z));return j4(D1(G,E(X,E$),W,Q),G)}function lL($,X,Y,z){let G=q1(Y);$==="subtract"&&(G=n4(G));let U=x$(W$(z)),W=E(X,p),Q=Q0(G),Z=E(X,W6),H=aY(Z.time,Q.time),O=Z4(Q.date,H.deltaDays);return J3(O.years,O.months,O.weeks,O.days,0,0,0,0,0,0),K1(k$(D1(W,Z.isoDate,O,U),H),W)}function iL($,X,Y){let z=q1(Y);$==="subtract"&&(z=n4(z));let G=Q0(z),{hour:U,minute:W,second:Q,millisecond:Z,microsecond:H,nanosecond:O}=aY(E(X,N6),G.time);return h0(E3(U,W,Q,Z,H,O,"reject"))}function rL($,X,Y,z){let G=q1(Y);$==="subtract"&&(G=n4(G));let U=x$(W$(z)),W=U3(G),Q=E(X,p),Z=I4(Q,E(X,E$),"year-month");Z.day=1;let H=v8(Q,Z,"constrain");if(W<0){let w=D1(Q,H,{months:1},"constrain");H=r4(w.year,w.month,w.day-1)}let O=hJ(G);return IX(H),lY(d9(Q,I4(Q,D1(Q,H,O,U),"year-month"),U),Q)}function nL($,X,Y,z){let G=q1(Y);$==="subtract"&&(G=n4(G));let U=x$(W$(z)),W=E(X,m$),Q=E(X,p),Z=cY(G);return Q4(k9(E(X,N$),W,Q,Z,U),W,Q)}function q8($,X,Y){let z=Math.trunc($/X),G=$%X,U=$<0?"negative":"positive",W=Math.abs(z),Q=W+1,Z=l4(Math.abs(2*G)-X),H=W%2==0,O=O3(Y,U),w=G===0?W:w3(W,Q,Z,H,O);return X*(U==="positive"?w:-w)}function ew($,X,Y,z){let G=tY[Y]*X;return function(U,W,Q){let Z=k0(U),H=k0(W),O=B.divide(Z,H),w=B.remainder(Z,H),V=O3(Q,"positive"),D,N;B.lessThan(Z,w1)?(D=B.subtract(O,u9),N=O):(D=O,N=B.add(O,u9));let F=az(AX(B.multiply(w,zV)),H)*(B.lessThan(Z,w1)?-1:1)+0,L=B.equal(w,w1)?O:w3(D,N,F,sL(D),V);return B.multiply(L,H)}($,B.BigInt(G),z)}function $V($,X,Y,z){aw($);let{year:G,month:U,day:W}=$.isoDate,Q=XV($.time,X,Y,z);return k$(r4(G,U,W+Q.deltaDays),Q)}function XV({hour:$,minute:X,second:Y,millisecond:z,microsecond:G,nanosecond:U},W,Q,Z){let H;switch(Q){case"day":case"hour":H=1000*(1000*(1000*(60*(60*$+X)+Y)+z)+G)+U;break;case"minute":H=1000*(1000*(1000*(60*X+Y)+z)+G)+U;break;case"second":H=1000*(1000*(1000*Y+z)+G)+U;break;case"millisecond":H=1000*(1000*z+G)+U;break;case"microsecond":H=1000*G+U;break;case"nanosecond":H=U}let O=tY[Q],w=q8(H,O*W,Z)/O;switch(Q){case"day":return{deltaDays:w,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0};case"hour":return K8(w,0,0,0,0,0);case"minute":return K8($,w,0,0,0,0);case"second":return K8($,X,w,0,0,0);case"millisecond":return K8($,X,Y,w,0,0);case"microsecond":return K8($,X,Y,z,w,0);case"nanosecond":return K8($,X,Y,z,G,w);default:throw new Error(`Invalid unit ${Q}`)}}function W3($,X,Y,z){let G=tY[Y];return $.round(B.BigInt(G*X),z)}function m9($,X){let Y=tY[X];return $.fdiv(B.BigInt(Y))}function w0($,X){return $.year!==X.year?l4($.year-X.year):$.month!==X.month?l4($.month-X.month):$.day!==X.day?l4($.day-X.day):0}function YV($,X){return $.hour!==X.hour?l4($.hour-X.hour):$.minute!==X.minute?l4($.minute-X.minute):$.second!==X.second?l4($.second-X.second):$.millisecond!==X.millisecond?l4($.millisecond-X.millisecond):$.microsecond!==X.microsecond?l4($.microsecond-X.microsecond):$.nanosecond!==X.nanosecond?l4($.nanosecond-X.nanosecond):0}function sY($,X){let Y=w0($.isoDate,X.isoDate);return Y!==0?Y:YV($.time,X.time)}function pJ($){let X=Q3($);return globalThis.BigInt!==void 0?globalThis.BigInt(X.toString(10)):X}function R1($,X){let Y=k0($),{quotient:z,remainder:G}=v9(Y,t9),U=B.toNumber(z);return X==="floor"&&B.toNumber(G)<0&&(U-=1),X==="ceil"&&B.toNumber(G)>0&&(U+=1),U}function m1($){if(!Number.isInteger($))throw new RangeError("epoch milliseconds must be an integer");return B.multiply(B.BigInt($),t9)}function Q3($){let X=$;if(typeof $=="object"){let Y=$[Symbol.toPrimitive];Y&&typeof Y=="function"&&(X=Y.call($,"number"))}if(typeof X=="number")throw new TypeError("cannot convert number to bigint");return typeof X=="bigint"?B.BigInt(X.toString(10)):B.BigInt(X)}var GV=(()=>{let $=B.BigInt(Date.now()%1e6);return()=>{let X=Date.now(),Y=B.BigInt(X),z=B.add(m1(X),$);return $=B.remainder(Y,t9),B.greaterThan(z,nY)?nY:B.lessThan(z,c9)?c9:z}})();function R9(){return new Intl.DateTimeFormat().resolvedOptions().timeZone}function l4($){return $<0?-1:$>0?1:$}function W$($){if($===void 0)return Object.create(null);if(E6($)&&$!==null)return $;throw new TypeError("Options parameter must be an object, not "+($===null?"null":typeof $))}function CX($,X){let Y=Object.create(null);return Y[$]=X,Y}function u0($,X,Y,z){let G=$[X];if(G!==void 0){if(G=D3(G),!Y.includes(G))throw new RangeError(`${X} must be one of ${Y.join(", ")}, not ${G}`);return G}if(z===p0)throw new RangeError(`${X} option is required`);return z}function S4($){let X=n9($);if(!lS.includes(n9(X)))throw new RangeError(`invalid calendar identifier ${X}`);switch(X){case"ethiopic-amete-alem":return"ethioaa";case"islamicc":return"islamic-civil"}return X}function n9($){let X="";for(let Y=0;Y<$.length;Y++){let z=$.charCodeAt(Y);X+=z>=65&&z<=90?String.fromCharCode(z+32):String.fromCharCode(z)}return X}function j8($){throw new TypeError(`Do not use built-in arithmetic operators with Temporal objects. When comparing, use ${$==="PlainMonthDay"?"Temporal.PlainDate.compare(obj1.toPlainDate(year), obj2.toPlainDate(year))":`Temporal.${$}.compare(obj1, obj2)`}, not obj1 > obj2. When coercing to strings, use \`\${obj}\` or String(obj), not '' + obj. When coercing to numbers, use properties or methods of the object, not \`+obj\`. When concatenating with strings, use \`\${str}\${obj}\` or str.concat(obj), not str + obj. In React, coerce to a string before rendering a Temporal object.`)}var sS=new RegExp(`^${VJ.source}$`),eS=new RegExp(`^${/([+-])([01][0-9]|2[0-3])(?::?([0-5][0-9])(?::?([0-5][0-9])(?:[.,](\d{1,9}))?)?)?/.source}$`);function dJ($,X,Y,z=$(X),G=$(Y)){let U=X,W=Y,Q=z,Z=G;for(;W-U>1;){let H=Math.trunc((U+W)/2),O=$(H);O===Q?(U=H,Q=O):O===Z&&(W=H,Z=O)}return W}function lJ($){return[...$]}function iJ($,X){if($!=="gregory"&&$!=="iso8601")return;let Y=Z5[$],z=X.year,{dayOfWeek:G,dayOfYear:U,daysInYear:W}=Y.isoToDate(X,{dayOfWeek:!0,dayOfYear:!0,daysInYear:!0}),Q=Y.getFirstDayOfWeek(),Z=Y.getMinimalDaysInFirstWeek(),H=(G+7-Q)%7,O=(G-U+7001-Q)%7,w=Math.floor((U-1+O)/7);if(7-O>=Z&&++w,w==0)w=function(V,D,N,F){let L=(F-V-N+1)%7;L<0&&(L+=7);let K=Math.floor((N+L-1)/7);return 7-L>=D&&++K,K}(Q,Z,U+Y.isoToDate(Y.dateAdd(X,{years:-1},"constrain"),{daysInYear:!0}).daysInYear,G),z--;else if(U>=W-5){let V=(H+W-U)%7;V<0&&(V+=7),6-V>=Z&&U+7-H>W&&(w=1,z++)}return{week:w,year:z}}function oL($,X,Y,z,G){if(X!==G.year){if($*(X-G.year)>0)return!0}else if(Y!==G.month){if($*(Y-G.month)>0)return!0}else if(z!==G.day&&$*(z-G.day)>0)return!0;return!1}var Z5={};function jX($){if(!$.startsWith("M"))throw new RangeError(`Invalid month code: ${$}. Month codes must start with M.`);let X=+$.slice(1);if(Number.isNaN(X))throw new RangeError(`Invalid month code: ${$}`);return X}function Z0($,X=!1){return`M${`${$}`.padStart(2,"0")}${X?"L":""}`}function NV($,X=void 0,Y=12){let{month:z,monthCode:G}=$;if(G===void 0){if(z===void 0)throw new TypeError("Either month or monthCode are required");X==="reject"&&i6(z,1,Y),X==="constrain"&&(z=C4(z,1,Y)),G=Z0(z)}else{let U=jX(G);if(G!==Z0(U))throw new RangeError(`Invalid month code: ${G}`);if(z!==void 0&&z!==U)throw new RangeError(`monthCode ${G} and month ${z} must match if both are present`);if(z=U,z<1||z>Y)throw new RangeError(`Invalid monthCode: ${G}`)}return{...$,month:z,monthCode:G}}Z5.iso8601={resolveFields($,X){if((X==="date"||X==="year-month")&&$.year===void 0)throw new TypeError("year is required");if((X==="date"||X==="month-day")&&$.day===void 0)throw new TypeError("day is required");Object.assign($,NV($))},dateToISO:($,X)=>g9($.year,$.month,$.day,X),monthDayToISOReferenceDate($,X){let{month:Y,day:z}=g9($.year??1972,$.month,$.day,X);return{month:Y,day:z,year:1972}},extraFields:()=>[],fieldKeysToIgnore($){let X=new Set;for(let Y=0;Y<$.length;Y++){let z=$[Y];X.add(z),z==="month"?X.add("monthCode"):z==="monthCode"&&X.add("month")}return lJ(X)},dateAdd($,{years:X=0,months:Y=0,weeks:z=0,days:G=0},U){let{year:W,month:Q,day:Z}=$;return W+=X,Q+=Y,{year:W,month:Q}=KX(W,Q),{year:W,month:Q,day:Z}=g9(W,Q,Z,U),Z+=G+7*z,r4(W,Q,Z)},dateUntil($,X,Y){let z=-w0($,X);if(z===0)return{years:0,months:0,weeks:0,days:0};let G,U=0,W=0;if(Y==="year"||Y==="month"){let O=X.year-$.year;for(O!==0&&(O-=z);!oL(z,$.year+O,$.month,$.day,X);)U=O,O+=z;let w=z;for(G=KX($.year+U,$.month+w);!oL(z,G.year,G.month,$.day,X);)W=w,w+=z,G=KX(G.year,G.month+z);Y==="month"&&(W+=12*U,U=0)}G=KX($.year+U,$.month+W);let Q=fJ(G.year,G.month,$.day),Z=0,H=vX(X.year,X.month-1,X.day)-vX(Q.year,Q.month-1,Q.day);return Y==="week"&&(Z=Math.trunc(H/7),H%=7),{years:U,months:W,weeks:Z,days:H}},isoToDate({year:$,month:X,day:Y},z){let G={era:void 0,eraYear:void 0,year:$,month:X,day:Y,daysInWeek:7,monthsInYear:12};if(z.monthCode&&(G.monthCode=Z0(X)),z.dayOfWeek){let U=X+(X<3?10:-2),W=$-(X<3?1:0),Q=Math.floor(W/100),Z=W-100*Q,H=(Y+Math.floor(2.6*U-0.2)+(Z+Math.floor(Z/4))+(Math.floor(Q/4)-2*Q))%7;G.dayOfWeek=H+(H<=0?7:0)}if(z.dayOfYear){let U=Y;for(let W=X-1;W>0;W--)U+=qX($,W);G.dayOfYear=U}return z.weekOfYear&&(G.weekOfYear=iJ("iso8601",{year:$,month:X,day:Y})),z.daysInMonth&&(G.daysInMonth=qX($,X)),(z.daysInYear||z.inLeapYear)&&(G.inLeapYear=z3($),G.daysInYear=G.inLeapYear?366:365),G},getFirstDayOfWeek:()=>1,getMinimalDaysInFirstWeek:()=>4};class l6{constructor($){if(this.map=new Map,this.calls=0,this.hits=0,this.misses=0,$!==void 0){let X=0;for(let Y of $.map.entries()){if(++X>l6.MAX_CACHE_ENTRIES)break;this.map.set(...Y)}}}get($){let X=this.map.get($);return X&&(this.hits++,this.report()),this.calls++,X}set($,X){this.map.set($,X),this.misses++,this.report()}report(){}setObject($){if(l6.objectMap.get($))throw new RangeError("object already cached");l6.objectMap.set($,this),this.report()}static getCacheForObject($){let X=l6.objectMap.get($);return X||(X=new l6,l6.objectMap.set($,X)),X}}function rJ({isoYear:$,isoMonth:X,isoDay:Y}){return`${Q5($)}-${N1(X)}-${N1(Y)}T00:00Z`}function fw($,X){return{years:$.year-X.year,months:$.month-X.month,days:$.day-X.day}}l6.objectMap=new WeakMap,l6.MAX_CACHE_ENTRIES=1000;class B8{constructor(){this.eras=[],this.hasEra=!1,this.erasBeginMidYear=!1}getFormatter(){return this.formatter===void 0&&(this.formatter=new Intl.DateTimeFormat(`en-US-u-ca-${this.id}`,{day:"numeric",month:"numeric",year:"numeric",era:"short",timeZone:"UTC"})),this.formatter}getCalendarParts($){let X=this.getFormatter(),Y=new Date($);if($==="-271821-04-19T00:00Z"){let z=X.resolvedOptions();X=new Intl.DateTimeFormat(z.locale,{...z,timeZone:"Etc/GMT+1"}),Y=new Date("-271821-04-20T00:00Z")}try{return X.formatToParts(Y)}catch(z){throw new RangeError(`Invalid ISO date: ${$}`)}}isoToCalendarDate($,X){let{year:Y,month:z,day:G}=$,U=JSON.stringify({func:"isoToCalendarDate",isoYear:Y,isoMonth:z,isoDay:G,id:this.id}),W=X.get(U);if(W)return W;let Q=rJ({isoYear:Y,isoMonth:z,isoDay:G}),Z=this.getCalendarParts(Q),H={};for(let w=0;w<Z.length;w++){let{type:V,value:D}=Z[w];if(V!=="year"&&V!=="relatedYear"||(this.hasEra?H.eraYear=+D:H.year=+D),V==="month"){let N=/^([0-9]*)(.*?)$/.exec(D);if(!N||N.length!=3||!N[1]&&!N[2])throw new RangeError(`Unexpected month: ${D}`);if(H.month=N[1]?+N[1]:1,H.month<1)throw new RangeError(`Invalid month ${D} from ${Q}[u-ca-${this.id}] (probably due to https://bugs.chromium.org/p/v8/issues/detail?id=10527)`);if(H.month>13)throw new RangeError(`Invalid month ${D} from ${Q}[u-ca-${this.id}] (probably due to https://bugs.chromium.org/p/v8/issues/detail?id=10529)`);N[2]&&(H.monthExtra=N[2])}V==="day"&&(H.day=+D),this.hasEra&&V==="era"&&D!=null&&D!==""&&(H.era=D.split(" (")[0].normalize("NFD").replace(/[^-0-9 \p{L}]/gu,"").replace(/ /g,"-").toLowerCase())}if(this.hasEra&&H.eraYear===void 0)throw new RangeError(`Intl.DateTimeFormat.formatToParts lacks relatedYear in ${this.id} calendar. Try Node 14+ or modern browsers.`);if(this.hasEra){let w=this.eras.find((V)=>H.era===V.genericName);w&&(H.era=w.code)}if(this.reviseIntlEra){let{era:w,eraYear:V}=this.reviseIntlEra(H,$);H.era=w,H.eraYear=V}this.checkIcuBugs&&this.checkIcuBugs($);let O=this.adjustCalendarDate(H,X,"constrain",!0);if(O.year===void 0)throw new RangeError(`Missing year converting ${JSON.stringify($)}`);if(O.month===void 0)throw new RangeError(`Missing month converting ${JSON.stringify($)}`);if(O.day===void 0)throw new RangeError(`Missing day converting ${JSON.stringify($)}`);return X.set(U,O),["constrain","reject"].forEach((w)=>{let V=JSON.stringify({func:"calendarToIsoDate",year:O.year,month:O.month,day:O.day,overflow:w,id:this.id});X.set(V,$)}),O}validateCalendarDate($){let{month:X,year:Y,day:z,eraYear:G,monthCode:U,monthExtra:W}=$;if(W!==void 0)throw new RangeError("Unexpected `monthExtra` value");if(Y===void 0&&G===void 0)throw new TypeError("year or eraYear is required");if(X===void 0&&U===void 0)throw new TypeError("month or monthCode is required");if(z===void 0)throw new RangeError("Missing day");if(U!==void 0){if(typeof U!="string")throw new RangeError("monthCode must be a string, not "+typeof U);if(!/^M([01]?\d)(L?)$/.test(U))throw new RangeError(`Invalid monthCode: ${U}`)}if(this.hasEra&&$.era===void 0!=($.eraYear===void 0))throw new TypeError("properties era and eraYear must be provided together")}adjustCalendarDate($,X=void 0,Y="constrain",z=!1){if(this.calendarType==="lunisolar")throw new RangeError("Override required for lunisolar calendars");let G=$;this.validateCalendarDate(G);let U=this.monthsInYear(G,X),{month:W,monthCode:Q}=G;return{month:W,monthCode:Q}=NV(G,Y,U),{...G,month:W,monthCode:Q}}regulateMonthDayNaive($,X,Y){let z=this.monthsInYear($,Y),{month:G,day:U}=$;return X==="reject"?(i6(G,1,z),i6(U,1,this.maximumMonthLength($))):(G=C4(G,1,z),U=C4(U,1,this.maximumMonthLength({...$,month:G}))),{...$,month:G,day:U}}calendarToIsoDate($,X="constrain",Y){let z=$,G=this.adjustCalendarDate($,Y,X,!1);G=this.regulateMonthDayNaive(G,X,Y);let{year:U,month:W,day:Q}=G,Z=JSON.stringify({func:"calendarToIsoDate",year:U,month:W,day:Q,overflow:X,id:this.id}),H,O=Y.get(Z);if(O)return O;if(z.year!==void 0&&z.month!==void 0&&z.day!==void 0&&(z.year!==G.year||z.month!==G.month||z.day!==G.day)&&(H=JSON.stringify({func:"calendarToIsoDate",year:z.year,month:z.month,day:z.day,overflow:X,id:this.id}),O=Y.get(H),O))return O;let w=this.estimateIsoDate({year:U,month:W,day:Q}),V=(K)=>{let q=this.addDaysIso(w,K);if(G.day>this.minimumMonthLength(G)){let R=this.isoToCalendarDate(q,Y);for(;R.month!==W||R.year!==U;){if(X==="reject")throw new RangeError(`day ${Q} does not exist in month ${W} of year ${U}`);q=this.addDaysIso(q,-1),R=this.isoToCalendarDate(q,Y)}}return q},D=0,N=this.isoToCalendarDate(w,Y),F=fw(G,N);if(F.years!==0||F.months!==0||F.days!==0){let K=365*F.years+30*F.months+F.days;w=this.addDaysIso(w,K),N=this.isoToCalendarDate(w,Y),F=fw(G,N),F.years===0&&F.months===0?w=V(F.days):D=this.compareCalendarDates(G,N)}let L=8;for(;D;){w=this.addDaysIso(w,D*L);let K=N;N=this.isoToCalendarDate(w,Y);let q=D;if(D=this.compareCalendarDates(G,N),D){if(F=fw(G,N),F.years===0&&F.months===0)w=V(F.days),D=0;else if(q&&D!==q)if(L>1)L/=2;else{if(X==="reject")throw new RangeError(`Can't find ISO date from calendar date: ${JSON.stringify({...z})}`);this.compareCalendarDates(N,K)>0&&(w=this.addDaysIso(w,-1)),D=0}}}if(Y.set(Z,w),H&&Y.set(H,w),G.year===void 0||G.month===void 0||G.day===void 0||G.monthCode===void 0||this.hasEra&&(G.era===void 0||G.eraYear===void 0))throw new RangeError("Unexpected missing property");return w}compareCalendarDates($,X){return $.year!==X.year?l4($.year-X.year):$.month!==X.month?l4($.month-X.month):$.day!==X.day?l4($.day-X.day):0}regulateDate($,X="constrain",Y){let z=this.calendarToIsoDate($,X,Y);return this.isoToCalendarDate(z,Y)}addDaysIso($,X){return r4($.year,$.month,$.day+X)}addDaysCalendar($,X,Y){let z=this.calendarToIsoDate($,"constrain",Y),G=this.addDaysIso(z,X);return this.isoToCalendarDate(G,Y)}addMonthsCalendar($,X,Y,z){let G=$,{day:U}=G;for(let W=0,Q=Math.abs(X);W<Q;W++){let{month:Z}=G,H=G,O=X<0?-Math.max(U,this.daysInPreviousMonth(G,z)):this.daysInMonth(G,z),w=this.calendarToIsoDate(G,"constrain",z),V=this.addDaysIso(w,O);if(G=this.isoToCalendarDate(V,z),X>0){let D=this.monthsInYear(H,z);for(;G.month-1!=Z%D;)V=this.addDaysIso(V,-1),G=this.isoToCalendarDate(V,z)}G.day!==U&&(G=this.regulateDate({...G,day:U},"constrain",z))}if(Y==="reject"&&G.day!==U)throw new RangeError(`Day ${U} does not exist in resulting calendar month`);return G}addCalendar($,{years:X=0,months:Y=0,weeks:z=0,days:G=0},U,W){let{year:Q,day:Z,monthCode:H}=$,O=this.adjustCalendarDate({year:Q+X,monthCode:H,day:Z},W),w=this.addMonthsCalendar(O,Y,U,W),V=G+7*z;return this.addDaysCalendar(w,V,W)}untilCalendar($,X,Y,z){let G=0,U=0,W=0,Q=0;switch(Y){case"day":G=this.calendarDaysUntil($,X,z);break;case"week":{let Z=this.calendarDaysUntil($,X,z);G=Z%7,U=(Z-G)/7;break}case"month":case"year":{let Z=this.compareCalendarDates(X,$);if(!Z)return{years:0,months:0,weeks:0,days:0};let H=X.year-$.year,O=X.day-$.day;if(Y==="year"&&H){let D=0;X.monthCode>$.monthCode&&(D=1),X.monthCode<$.monthCode&&(D=-1),D||(D=Math.sign(O)),Q=D*Z<0?H-Z:H}let w,V=Q?this.addCalendar($,{years:Q},"constrain",z):$;do W+=Z,w=V,V=this.addMonthsCalendar(w,Z,"constrain",z),V.day!==$.day&&(V=this.regulateDate({...V,day:$.day},"constrain",z));while(this.compareCalendarDates(X,V)*Z>=0);W-=Z,G=this.calendarDaysUntil(w,X,z);break}}return{years:Q,months:W,weeks:U,days:G}}daysInMonth($,X){let{day:Y}=$,z=this.maximumMonthLength($),G=this.minimumMonthLength($);if(G===z)return G;let U=Y<=z-G?z:G,W=this.calendarToIsoDate($,"constrain",X),Q=this.addDaysIso(W,U),Z=this.isoToCalendarDate(Q,X),H=this.addDaysIso(Q,-Z.day);return this.isoToCalendarDate(H,X).day}daysInPreviousMonth($,X){let{day:Y,month:z,year:G}=$,U={year:z>1?G:G-1,month:z,day:1},W=z>1?z-1:this.monthsInYear(U,X);U={...U,month:W};let Q=this.minimumMonthLength(U),Z=this.maximumMonthLength(U);if(Q===Z)return Z;let H=this.calendarToIsoDate($,"constrain",X),O=this.addDaysIso(H,-Y);return this.isoToCalendarDate(O,X).day}startOfCalendarYear($){return{year:$.year,month:1,monthCode:"M01",day:1}}startOfCalendarMonth($){return{year:$.year,month:$.month,day:1}}calendarDaysUntil($,X,Y){let z=this.calendarToIsoDate($,"constrain",Y),G=this.calendarToIsoDate(X,"constrain",Y);return vX(G.year,G.month-1,G.day)-vX(z.year,z.month-1,z.day)}monthDaySearchStartYear($,X){return 1972}monthDayFromFields($,X,Y){let z,G,U,W,Q,{era:Z,eraYear:H,year:O,month:w,monthCode:V,day:D}=$;if(w!==void 0&&O===void 0&&(!this.hasEra||Z===void 0||H===void 0))throw new TypeError("when month is present, year (or era and eraYear) are required");(V===void 0||O!==void 0||this.hasEra&&H!==void 0)&&({monthCode:V,day:D}=this.isoToCalendarDate(this.calendarToIsoDate($,X,Y),Y));let N={year:this.monthDaySearchStartYear(V,D),month:12,day:31},F=this.isoToCalendarDate(N,Y),L=F.monthCode>V||F.monthCode===V&&F.day>=D?F.year:F.year-1;for(let K=0;K<20;K++){let q=this.adjustCalendarDate({day:D,monthCode:V,year:L-K},Y),R=this.calendarToIsoDate(q,"constrain",Y),_=this.isoToCalendarDate(R,Y);if({year:z,month:G,day:U}=R,_.monthCode===V&&_.day===D)return{month:G,day:U,year:z};if(X==="constrain"){let v=this.maxLengthOfMonthCodeInAnyYear(_.monthCode);if(_.monthCode===V&&_.day===v&&D>v)return{month:G,day:U,year:z};(W===void 0||_.monthCode===W.monthCode&&_.day>W.day)&&(W=_,Q=R)}}if(X==="constrain"&&Q!==void 0)return Q;throw new RangeError(`No recent ${this.id} year with monthCode ${V} and day ${D}`)}getFirstDayOfWeek(){}getMinimalDaysInFirstWeek(){}}class nJ extends B8{constructor(){super(...arguments),this.id="hebrew",this.calendarType="lunisolar",this.months={Tishri:{leap:1,regular:1,monthCode:"M01",days:30},Heshvan:{leap:2,regular:2,monthCode:"M02",days:{min:29,max:30}},Kislev:{leap:3,regular:3,monthCode:"M03",days:{min:29,max:30}},Tevet:{leap:4,regular:4,monthCode:"M04",days:29},Shevat:{leap:5,regular:5,monthCode:"M05",days:30},Adar:{leap:void 0,regular:6,monthCode:"M06",days:29},"Adar I":{leap:6,regular:void 0,monthCode:"M05L",days:30},"Adar II":{leap:7,regular:void 0,monthCode:"M06",days:29},Nisan:{leap:8,regular:7,monthCode:"M07",days:30},Iyar:{leap:9,regular:8,monthCode:"M08",days:29},Sivan:{leap:10,regular:9,monthCode:"M09",days:30},Tamuz:{leap:11,regular:10,monthCode:"M10",days:29},Av:{leap:12,regular:11,monthCode:"M11",days:30},Elul:{leap:13,regular:12,monthCode:"M12",days:29}}}inLeapYear($){let{year:X}=$;return(7*X+1)%19<7}monthsInYear($){return this.inLeapYear($)?13:12}minimumMonthLength($){return this.minMaxMonthLength($,"min")}maximumMonthLength($){return this.minMaxMonthLength($,"max")}minMaxMonthLength($,X){let{month:Y,year:z}=$,G=this.getMonthCode(z,Y),U=Object.entries(this.months).find((Q)=>Q[1].monthCode===G);if(U===void 0)throw new RangeError(`unmatched Hebrew month: ${Y}`);let W=U[1].days;return typeof W=="number"?W:W[X]}maxLengthOfMonthCodeInAnyYear($){return["M04","M06","M08","M10","M12"].includes($)?29:30}estimateIsoDate($){let{year:X}=$;return{year:X-3760,month:1,day:1}}getMonthCode($,X){return this.inLeapYear({year:$})?X===6?Z0(5,!0):Z0(X<6?X:X-1):Z0(X)}adjustCalendarDate($,X,Y="constrain",z=!1){let{year:G,month:U,monthCode:W,day:Q,monthExtra:Z}=$;if(G===void 0)throw new TypeError("Missing property: year");if(z){if(Z){let H=this.months[Z];if(!H)throw new RangeError(`Unrecognized month from formatToParts: ${Z}`);U=this.inLeapYear({year:G})?H.leap:H.regular}return W=this.getMonthCode(G,U),{year:G,month:U,day:Q,monthCode:W}}if(this.validateCalendarDate($),U===void 0)if(W.endsWith("L")){if(W!=="M05L")throw new RangeError(`Hebrew leap month must have monthCode M05L, not ${W}`);if(U=6,!this.inLeapYear({year:G})){if(Y==="reject")throw new RangeError(`Hebrew monthCode M05L is invalid in year ${G} which is not a leap year`);U=6,W="M06"}}else{U=jX(W),this.inLeapYear({year:G})&&U>=6&&U++;let H=this.monthsInYear({year:G});if(U<1||U>H)throw new RangeError(`Invalid monthCode: ${W}`)}else if(Y==="reject"?(i6(U,1,this.monthsInYear({year:G})),i6(Q,1,this.maximumMonthLength({year:G,month:U}))):(U=C4(U,1,this.monthsInYear({year:G})),Q=C4(Q,1,this.maximumMonthLength({year:G,month:U}))),W===void 0)W=this.getMonthCode(G,U);else if(this.getMonthCode(G,U)!==W)throw new RangeError(`monthCode ${W} doesn't correspond to month ${U} in Hebrew year ${G}`);return{...$,day:Q,month:U,monthCode:W,year:G}}}class xX extends B8{constructor(){super(...arguments),this.calendarType="lunar",this.DAYS_PER_ISLAMIC_YEAR=354.3666666666667,this.DAYS_PER_ISO_YEAR=365.2425}inLeapYear($,X){let Y={year:$.year,month:1,monthCode:"M01",day:1},z={year:$.year+1,month:1,monthCode:"M01",day:1};return this.calendarDaysUntil(Y,z,X)===355}monthsInYear(){return 12}minimumMonthLength(){return 29}maximumMonthLength(){return 30}maxLengthOfMonthCodeInAnyYear(){return 30}estimateIsoDate($){let{year:X}=this.adjustCalendarDate($);return{year:Math.floor(X*this.DAYS_PER_ISLAMIC_YEAR/this.DAYS_PER_ISO_YEAR)+622,month:1,day:1}}}class oJ extends xX{constructor(){super(...arguments),this.id="islamic"}}class tJ extends xX{constructor(){super(...arguments),this.id="islamic-umalqura"}}class aJ extends xX{constructor(){super(...arguments),this.id="islamic-tbla"}}class sJ extends xX{constructor(){super(...arguments),this.id="islamic-civil"}}class eJ extends xX{constructor(){super(...arguments),this.id="islamic-rgsa"}}class $A extends xX{constructor(){super(...arguments),this.id="islamicc"}}class XA extends B8{constructor(){super(...arguments),this.id="persian",this.calendarType="solar"}inLeapYear($,X){return this.daysInMonth({year:$.year,month:12,day:1},X)===30}monthsInYear(){return 12}minimumMonthLength($){let{month:X}=$;return X===12?29:X<=6?31:30}maximumMonthLength($){let{month:X}=$;return X===12?30:X<=6?31:30}maxLengthOfMonthCodeInAnyYear($){return jX($)<=6?31:30}estimateIsoDate($){let{year:X}=this.adjustCalendarDate($);return{year:X+621,month:1,day:1}}}class YA extends B8{constructor(){super(...arguments),this.id="indian",this.calendarType="solar",this.months={1:{length:30,month:3,day:22,leap:{length:31,month:3,day:21}},2:{length:31,month:4,day:21},3:{length:31,month:5,day:22},4:{length:31,month:6,day:22},5:{length:31,month:7,day:23},6:{length:31,month:8,day:23},7:{length:30,month:9,day:23},8:{length:30,month:10,day:23},9:{length:30,month:11,day:22},10:{length:30,month:12,day:22},11:{length:30,month:1,nextYear:!0,day:21},12:{length:30,month:2,nextYear:!0,day:20}},this.vulnerableToBceBug=new Date("0000-01-01T00:00Z").toLocaleDateString("en-US-u-ca-indian",{timeZone:"UTC"})!=="10/11/-79 Saka"}inLeapYear($){return EV($.year+78)}monthsInYear(){return 12}minimumMonthLength($){return this.getMonthInfo($).length}maximumMonthLength($){return this.getMonthInfo($).length}maxLengthOfMonthCodeInAnyYear($){let X=jX($),Y=this.months[X];return Y=Y.leap??Y,Y.length}getMonthInfo($){let{month:X}=$,Y=this.months[X];if(Y===void 0)throw new RangeError(`Invalid month: ${X}`);return this.inLeapYear($)&&Y.leap&&(Y=Y.leap),Y}estimateIsoDate($){let X=this.adjustCalendarDate($),Y=this.getMonthInfo(X);return r4(X.year+78+(Y.nextYear?1:0),Y.month,Y.day+X.day-1)}checkIcuBugs($){if(this.vulnerableToBceBug&&$.year<1)throw new RangeError(`calendar '${this.id}' is broken for ISO dates before 0001-01-01 (see https://bugs.chromium.org/p/v8/issues/detail?id=10529)`)}}function EV($){return $%4==0&&($%100!=0||$%400==0)}class FV extends B8{constructor($,X){super(),this.calendarType="solar",this.id=$,this.isoEpoch=X}inLeapYear($){let{year:X}=this.estimateIsoDate({month:1,day:1,year:$.year});return EV(X)}monthsInYear(){return 12}minimumMonthLength($){let{month:X}=$;return X===2?this.inLeapYear($)?29:28:[4,6,9,11].indexOf(X)>=0?30:31}maximumMonthLength($){return this.minimumMonthLength($)}maxLengthOfMonthCodeInAnyYear($){return[31,29,31,30,31,30,31,31,30,31,30,31][jX($)-1]}estimateIsoDate($){let X=this.adjustCalendarDate($);return g9(X.year+this.isoEpoch.year,X.month+this.isoEpoch.month,X.day+this.isoEpoch.day,"constrain")}}class MV extends B8{constructor($,X){super(),this.hasEra=!0,this.calendarType="solar",this.id=$;let{eras:Y,anchorEra:z}=function(G){let U,W=G;if(W.length===0)throw new RangeError("Invalid era data: eras are required");if(W.length===1&&W[0].reverseOf)throw new RangeError("Invalid era data: anchor era cannot count years backwards");if(W.length===1&&!W[0].code)throw new RangeError("Invalid era data: at least one named era is required");if(W.filter((Z)=>Z.reverseOf!=null).length>1)throw new RangeError("Invalid era data: only one era can count years backwards");W.forEach((Z)=>{if(Z.isAnchor||!Z.anchorEpoch&&!Z.reverseOf){if(U)throw new RangeError("Invalid era data: cannot have multiple anchor eras");U=Z,Z.anchorEpoch={year:Z.hasYearZero?0:1}}else if(!Z.code)throw new RangeError("If era name is blank, it must be the anchor era")}),W=W.filter((Z)=>Z.code),W.forEach((Z)=>{let{reverseOf:H}=Z;if(H){let O=W.find((w)=>w.code===H);if(O===void 0)throw new RangeError(`Invalid era data: unmatched reverseOf era: ${H}`);Z.reverseOf=O,Z.anchorEpoch=O.anchorEpoch,Z.isoEpoch=O.isoEpoch}Z.anchorEpoch.month===void 0&&(Z.anchorEpoch.month=1),Z.anchorEpoch.day===void 0&&(Z.anchorEpoch.day=1)}),W.sort((Z,H)=>{if(Z.reverseOf)return 1;if(H.reverseOf)return-1;if(!Z.isoEpoch||!H.isoEpoch)throw new RangeError("Invalid era data: missing ISO epoch");return H.isoEpoch.year-Z.isoEpoch.year});let Q=W[W.length-1].reverseOf;if(Q&&Q!==W[W.length-2])throw new RangeError("Invalid era data: invalid reverse-sign era");return W.forEach((Z,H)=>{Z.genericName="era"+(W.length-1-H)}),{eras:W,anchorEra:U||W[0]}}(X);this.anchorEra=z,this.eras=Y}inLeapYear($){let{year:X}=this.estimateIsoDate({month:1,day:1,year:$.year});return EV(X)}monthsInYear(){return 12}minimumMonthLength($){let{month:X}=$;return X===2?this.inLeapYear($)?29:28:[4,6,9,11].indexOf(X)>=0?30:31}maximumMonthLength($){return this.minimumMonthLength($)}maxLengthOfMonthCodeInAnyYear($){return[31,29,31,30,31,30,31,31,30,31,30,31][jX($)-1]}completeEraYear($){let X=(W,Q,Z)=>{let H=$[W];if(H!=null&&H!=Q&&!(Z||[]).includes(H)){let O=Z?.[0];throw new RangeError(`Input ${W} ${H} doesn't match calculated value ${O?`${Q} (also called ${O})`:Q}`)}},Y=(W)=>{let Q,Z={...$,year:W},H=this.eras.find((O,w)=>{if(w===this.eras.length-1){if(O.reverseOf){if(W>0)throw new RangeError(`Signed year ${W} is invalid for era ${O.code}`);return Q=O.anchorEpoch.year-W,!0}return Q=W-O.anchorEpoch.year+(O.hasYearZero?0:1),!0}return this.compareCalendarDates(Z,O.anchorEpoch)>=0&&(Q=W-O.anchorEpoch.year+(O.hasYearZero?0:1),!0)});if(!H)throw new RangeError(`Year ${W} was not matched by any era`);return{eraYear:Q,era:H.code,eraNames:H.names}},{year:z,eraYear:G,era:U}=$;if(z!=null){let W=Y(z);({eraYear:G,era:U}=W),X("era",U,W?.eraNames),X("eraYear",G)}else{if(G==null)throw new RangeError("Either year or eraYear and era are required");{if(U===void 0)throw new RangeError("era and eraYear must be provided together");let W=this.eras.find(({code:Q,names:Z=[]})=>Q===U||Z.includes(U));if(!W)throw new RangeError(`Era ${U} (ISO year ${G}) was not matched by any era`);z=W.reverseOf?W.anchorEpoch.year-G:G+W.anchorEpoch.year-(W.hasYearZero?0:1),X("year",z),{eraYear:G,era:U}=Y(z)}}return{...$,year:z,eraYear:G,era:U}}adjustCalendarDate($,X,Y="constrain"){let z=$,{month:G,monthCode:U}=z;return G===void 0&&(z={...z,month:jX(U)}),this.validateCalendarDate(z),z=this.completeEraYear(z),super.adjustCalendarDate(z,X,Y)}estimateIsoDate($){let X=this.adjustCalendarDate($),{year:Y,month:z,day:G}=X,{anchorEra:U}=this;return g9(Y+U.isoEpoch.year-(U.hasYearZero?0:1),z,G,"constrain")}}class K3 extends MV{constructor($,X){super($,X)}isoToCalendarDate($){let{year:X,month:Y,day:z}=$,G=Z0(Y),U=X-this.anchorEra.isoEpoch.year+1;return this.completeEraYear({year:U,month:Y,monthCode:G,day:z})}}var W0={inLeapYear($){let{year:X}=$;return(X+1)%4==0},monthsInYear:()=>13,minimumMonthLength($){let{month:X}=$;return X===13?this.inLeapYear($)?6:5:30},maximumMonthLength($){return this.minimumMonthLength($)},maxLengthOfMonthCodeInAnyYear:($)=>$==="M13"?6:30};class GA extends FV{constructor($,X){super($,X),this.inLeapYear=W0.inLeapYear,this.monthsInYear=W0.monthsInYear,this.minimumMonthLength=W0.minimumMonthLength,this.maximumMonthLength=W0.maximumMonthLength,this.maxLengthOfMonthCodeInAnyYear=W0.maxLengthOfMonthCodeInAnyYear}}class LV extends MV{constructor($,X){super($,X),this.inLeapYear=W0.inLeapYear,this.monthsInYear=W0.monthsInYear,this.minimumMonthLength=W0.minimumMonthLength,this.maximumMonthLength=W0.maximumMonthLength,this.maxLengthOfMonthCodeInAnyYear=W0.maxLengthOfMonthCodeInAnyYear}}class zA extends GA{constructor(){super("ethioaa",{year:-5492,month:7,day:17})}}class UA extends LV{constructor(){super("coptic",[{code:"coptic",isoEpoch:{year:284,month:8,day:29}},{code:"coptic-inverse",reverseOf:"coptic"}])}}class WA extends LV{constructor(){super("ethiopic",[{code:"ethioaa",names:["ethiopic-amete-alem","mundi"],isoEpoch:{year:-5492,month:7,day:17}},{code:"ethiopic",names:["incar"],isoEpoch:{year:8,month:8,day:27},anchorEpoch:{year:5501}}])}}class QA extends K3{constructor(){super("roc",[{code:"roc",names:["minguo"],isoEpoch:{year:1912,month:1,day:1}},{code:"roc-inverse",names:["before-roc"],reverseOf:"roc"}])}}class ZA extends FV{constructor(){super("buddhist",{year:-543,month:1,day:1})}}class HA extends K3{constructor(){super("gregory",[{code:"gregory",names:["ad","ce"],isoEpoch:{year:1,month:1,day:1}},{code:"gregory-inverse",names:["be","bce"],reverseOf:"gregory"}])}reviseIntlEra($){let{era:X,eraYear:Y}=$;return X==="b"&&(X="gregory-inverse"),X==="a"&&(X="gregory"),{era:X,eraYear:Y}}getFirstDayOfWeek(){return 1}getMinimalDaysInFirstWeek(){return 1}}class OA extends K3{constructor(){super("japanese",[{code:"reiwa",isoEpoch:{year:2019,month:5,day:1},anchorEpoch:{year:2019,month:5,day:1}},{code:"heisei",isoEpoch:{year:1989,month:1,day:8},anchorEpoch:{year:1989,month:1,day:8}},{code:"showa",isoEpoch:{year:1926,month:12,day:25},anchorEpoch:{year:1926,month:12,day:25}},{code:"taisho",isoEpoch:{year:1912,month:7,day:30},anchorEpoch:{year:1912,month:7,day:30}},{code:"meiji",isoEpoch:{year:1868,month:9,day:8},anchorEpoch:{year:1868,month:9,day:8}},{code:"japanese",names:["japanese","gregory","ad","ce"],isoEpoch:{year:1,month:1,day:1}},{code:"japanese-inverse",names:["japanese-inverse","gregory-inverse","bc","bce"],reverseOf:"japanese"}]),this.erasBeginMidYear=!0}reviseIntlEra($,X){let{era:Y,eraYear:z}=$,{year:G}=X;return this.eras.find((U)=>U.code===Y)?{era:Y,eraYear:z}:G<1?{era:"japanese-inverse",eraYear:1-G}:{era:"japanese",eraYear:G}}}class JV extends B8{constructor(){super(...arguments),this.calendarType="lunisolar"}inLeapYear($,X){let Y=this.getMonthList($.year,X);return Object.entries(Y).length===13}monthsInYear($,X){return this.inLeapYear($,X)?13:12}minimumMonthLength(){return 29}maximumMonthLength(){return 30}maxLengthOfMonthCodeInAnyYear($){return["M01L","M09L","M10L","M11L","M12L"].includes($)?29:30}monthDaySearchStartYear($,X){let Y={M01L:[1651,1651],M02L:[1947,1765],M03L:[1966,1955],M04L:[1963,1944],M05L:[1971,1952],M06L:[1960,1941],M07L:[1968,1938],M08L:[1957,1718],M09L:[1832,1832],M10L:[1870,1870],M11L:[1814,1814],M12L:[1890,1890]}[$]??[1972,1972];return X<30?Y[0]:Y[1]}getMonthList($,X){if($===void 0)throw new TypeError("Missing year");let Y=JSON.stringify({func:"getMonthList",calendarYear:$,id:this.id}),z=X.get(Y);if(z)return z;let G=this.getFormatter(),U=(F,L)=>{let K=rJ({isoYear:F,isoMonth:2,isoDay:1}),q=new Date(K);q.setUTCDate(L+1);let R=G.formatToParts(q),_=R.find((m)=>m.type==="month").value,v=+R.find((m)=>m.type==="day").value,x=R.find((m)=>m.type==="relatedYear"),S;if(x===void 0)throw new RangeError(`Intl.DateTimeFormat.formatToParts lacks relatedYear in ${this.id} calendar. Try Node 14+ or modern browsers.`);return S=+x.value,{calendarMonthString:_,calendarDay:v,calendarYearToVerify:S}},W=17,{calendarMonthString:Q,calendarDay:Z,calendarYearToVerify:H}=U($,W);Q!=="1"&&(W+=29,{calendarMonthString:Q,calendarDay:Z}=U($,W)),W-=Z-5;let O={},w,V,D=1,N=!1;do({calendarMonthString:Q,calendarDay:Z,calendarYearToVerify:H}=U($,W)),w&&(O[V].daysInMonth=w+30-Z),H!==$?N=!0:(O[Q]={monthIndex:D++},W+=30),w=Z,V=Q;while(!N);return O[V].daysInMonth=w+30-Z,X.set(Y,O),O}estimateIsoDate($){let{year:X,month:Y}=$;return{year:X,month:Y>=12?12:Y+1,day:1}}adjustCalendarDate($,X,Y="constrain",z=!1){let{year:G,month:U,monthExtra:W,day:Q,monthCode:Z}=$;if(G===void 0)throw new TypeError("Missing property: year");if(z){if(W&&W!=="bis")throw new RangeError(`Unexpected leap month suffix: ${W}`);let H=Z0(U,W!==void 0),O=`${U}${W||""}`,w=this.getMonthList(G,X)[O];if(w===void 0)throw new RangeError(`Unmatched month ${O} in Chinese year ${G}`);return U=w.monthIndex,{year:G,month:U,day:Q,monthCode:H}}if(this.validateCalendarDate($),U===void 0){let H=this.getMonthList(G,X),O=Z.replace(/^M|L$/g,(V)=>V==="L"?"bis":"");O[0]==="0"&&(O=O.slice(1));let w=H[O];if(U=w&&w.monthIndex,U===void 0&&Z.endsWith("L")&&Z!="M13L"&&Y==="constrain"){let V=+Z.replace(/^M0?|L$/g,"");w=H[V],w&&(U=w.monthIndex,Z=Z0(V))}if(U===void 0)throw new RangeError(`Unmatched month ${Z} in Chinese year ${G}`)}else if(Z===void 0){let H=this.getMonthList(G,X),O=Object.entries(H),w=O.length;Y==="reject"?(i6(U,1,w),i6(Q,1,this.maximumMonthLength())):(U=C4(U,1,w),Q=C4(Q,1,this.maximumMonthLength()));let V=O.find((D)=>D[1].monthIndex===U);if(V===void 0)throw new RangeError(`Invalid month ${U} in Chinese year ${G}`);Z=Z0(+V[0].replace("bis",""),V[0].indexOf("bis")!==-1)}else{let H=this.getMonthList(G,X),O=Z.replace(/^M|L$/g,(V)=>V==="L"?"bis":"");O[0]==="0"&&(O=O.slice(1));let w=H[O];if(!w)throw new RangeError(`Unmatched monthCode ${Z} in Chinese year ${G}`);if(U!==w.monthIndex)throw new RangeError(`monthCode ${Z} doesn't correspond to month ${U} in Chinese year ${G}`)}return{...$,year:G,month:U,monthCode:Z,day:Q}}}class wA extends JV{constructor(){super(...arguments),this.id="chinese"}}class VA extends JV{constructor(){super(...arguments),this.id="dangi"}}class DA{constructor($){this.helper=$}extraFields($){return this.helper.hasEra&&$.includes("year")?["era","eraYear"]:[]}resolveFields($){if(this.helper.calendarType!=="lunisolar"){let X=new l6;NV($,void 0,this.helper.monthsInYear({year:$.year??1972},X))}}dateToISO($,X){let Y=new l6,z=this.helper.calendarToIsoDate($,X,Y);return Y.setObject(z),z}monthDayToISOReferenceDate($,X){let Y=new l6,z=this.helper.monthDayFromFields($,X,Y);return Y.setObject(z),z}fieldKeysToIgnore($){let X=new Set;for(let Y=0;Y<$.length;Y++){let z=$[Y];switch(X.add(z),z){case"era":X.add("eraYear"),X.add("year");break;case"eraYear":X.add("era"),X.add("year");break;case"year":X.add("era"),X.add("eraYear");break;case"month":X.add("monthCode"),this.helper.erasBeginMidYear&&(X.add("era"),X.add("eraYear"));break;case"monthCode":X.add("month"),this.helper.erasBeginMidYear&&(X.add("era"),X.add("eraYear"));break;case"day":this.helper.erasBeginMidYear&&(X.add("era"),X.add("eraYear"))}}return lJ(X)}dateAdd($,{years:X,months:Y,weeks:z,days:G},U){let W=l6.getCacheForObject($),Q=this.helper.isoToCalendarDate($,W),Z=this.helper.addCalendar(Q,{years:X,months:Y,weeks:z,days:G},U,W),H=this.helper.calendarToIsoDate(Z,"constrain",W);return l6.getCacheForObject(H)||new l6(W).setObject(H),H}dateUntil($,X,Y){let z=l6.getCacheForObject($),G=l6.getCacheForObject(X),U=this.helper.isoToCalendarDate($,z),W=this.helper.isoToCalendarDate(X,G);return this.helper.untilCalendar(U,W,Y,z)}isoToDate($,X){let Y=l6.getCacheForObject($),z=this.helper.isoToCalendarDate($,Y);if(X.dayOfWeek&&(z.dayOfWeek=Z5.iso8601.isoToDate($,{dayOfWeek:!0}).dayOfWeek),X.dayOfYear){let G=this.helper.startOfCalendarYear(z),U=this.helper.calendarDaysUntil(G,z,Y);z.dayOfYear=U+1}if(X.weekOfYear&&(z.weekOfYear=iJ(this.helper.id,$)),z.daysInWeek=7,X.daysInMonth&&(z.daysInMonth=this.helper.daysInMonth(z,Y)),X.daysInYear){let G=this.helper.startOfCalendarYear(z),U=this.helper.addCalendar(G,{years:1},"constrain",Y);z.daysInYear=this.helper.calendarDaysUntil(G,U,Y)}return X.monthsInYear&&(z.monthsInYear=this.helper.monthsInYear(z,Y)),X.inLeapYear&&(z.inLeapYear=this.helper.inLeapYear(z,Y)),z}getFirstDayOfWeek(){return this.helper.getFirstDayOfWeek()}getMinimalDaysInFirstWeek(){return this.helper.getMinimalDaysInFirstWeek()}}for(let $ of[nJ,XA,WA,zA,UA,wA,VA,QA,YA,ZA,HA,OA,oJ,tJ,aJ,sJ,eJ,$A]){let X=new $;Z5[X.id]=new DA(X)}pw("calendarImpl",function($){return Z5[$]});var o9=Intl.DateTimeFormat;function gY($,X){let Y=E($,X);return typeof Y=="function"&&(Y=new o9(E($,ZJ),Y(E($,yw))),function(z,G,U){let W=H3(z);if(W===void 0)throw new TypeError("Missing slots for the given container");if(W[G]===void 0)throw new TypeError(`tried to reset ${G} which was not set`);W[G]=U}($,X,Y)),Y}function P9($){return x4($,BX)}class eY{constructor($=void 0,X=void 0){(function(Y,z,G){let U=G!==void 0,W;if(U){let O=["localeMatcher","calendar","numberingSystem","hour12","hourCycle","timeZone","weekday","era","year","month","day","dayPeriod","hour","minute","second","fractionalSecondDigits","timeZoneName","formatMatcher","dateStyle","timeStyle"];W=function(V){if(V==null)throw new TypeError(`Expected object not ${V}`);return Object(V)}(G);let w=Object.create(null);for(let V=0;V<O.length;V++){let D=O[V];Object.prototype.hasOwnProperty.call(W,D)&&(w[D]=W[D])}W=w}else W=Object.create(null);let Q=new o9(z,W),Z=Q.resolvedOptions();if(d0(Y),U){let O=Object.assign(Object.create(null),Z);for(let w in O)Object.prototype.hasOwnProperty.call(W,w)||delete O[w];O.hour12=W.hour12,O.hourCycle=W.hourCycle,R$(Y,yw,O)}else R$(Y,yw,W);R$(Y,ZJ,Z.locale),R$(Y,BX,Q),R$(Y,uY,Z.timeZone),R$(Y,C9,Z.calendar),R$(Y,YJ,Zk),R$(Y,GJ,Wk),R$(Y,zJ,Qk),R$(Y,UJ,Uk),R$(Y,WJ,Hk),R$(Y,QJ,Ok);let H=U?W.timeZone:void 0;if(H===void 0)R$(Y,gw,Z.timeZone);else{let O=D3(H);if(O.startsWith("\u2212"))throw new RangeError("Unicode minus (U+2212) is not supported in time zone offsets");R$(Y,gw,B4(O))}})(this,$,X)}get format(){k(this,P9);let $=Xk.bind(this);return Object.defineProperties($,{length:{value:1,enumerable:!1,writable:!1,configurable:!0},name:{value:"",enumerable:!1,writable:!1,configurable:!0}}),$}formatRange($,X){return k(this,P9),Gk.call(this,$,X)}formatToParts($,...X){return k(this,P9),Yk.call(this,$,...X)}formatRangeToParts($,X){return k(this,P9),zk.call(this,$,X)}resolvedOptions(){return k(this,P9),$k.call(this)}}"formatToParts"in o9.prototype||delete eY.prototype.formatToParts,"formatRangeToParts"in o9.prototype||delete eY.prototype.formatRangeToParts;var V1=function($=void 0,X=void 0){return new eY($,X)};function $k(){let $=E(this,BX).resolvedOptions();return $.timeZone=E(this,gw),$}function Xk($,...X){let Y,z,G=$2($,this);return G.formatter?(Y=G.formatter,z=[R1(G.epochNs,"floor")]):(Y=E(this,BX),z=[$,...X]),Y.format(...z)}function Yk($,...X){let Y,z,G=$2($,this);return G.formatter?(Y=G.formatter,z=[R1(G.epochNs,"floor")]):(Y=E(this,BX),z=[$,...X]),Y.formatToParts(...z)}function Gk($,X){if($===void 0||X===void 0)throw new TypeError("Intl.DateTimeFormat.formatRange requires two values");let Y=Z3($),z=Z3(X),G,U=[Y,z];if(c0(Y)!==c0(z))throw new TypeError("Intl.DateTimeFormat.formatRange accepts two values of the same type");if(c0(Y)){if(!NA(Y,z))throw new TypeError("Intl.DateTimeFormat.formatRange accepts two values of the same type");let{epochNs:W,formatter:Q}=$2(Y,this),{epochNs:Z,formatter:H}=$2(z,this);Q&&(G=Q,U=[R1(W,"floor"),R1(Z,"floor")])}return G||(G=E(this,BX)),G.formatRange(...U)}function zk($,X){if($===void 0||X===void 0)throw new TypeError("Intl.DateTimeFormat.formatRange requires two values");let Y=Z3($),z=Z3(X),G,U=[Y,z];if(c0(Y)!==c0(z))throw new TypeError("Intl.DateTimeFormat.formatRangeToParts accepts two values of the same type");if(c0(Y)){if(!NA(Y,z))throw new TypeError("Intl.DateTimeFormat.formatRangeToParts accepts two values of the same type");let{epochNs:W,formatter:Q}=$2(Y,this),{epochNs:Z,formatter:H}=$2(z,this);Q&&(G=Q,U=[R1(W,"floor"),R1(Z,"floor")])}return G||(G=E(this,BX)),G.formatRangeToParts(...U)}function H5($={},X={}){let Y=Object.assign({},$),z=["year","month","day","hour","minute","second","weekday","dayPeriod","timeZoneName","dateStyle","timeStyle"];for(let G=0;G<z.length;G++){let U=z[G];Y[U]=U in X?X[U]:Y[U],Y[U]!==!1&&Y[U]!==void 0||delete Y[U]}return Y}function Uk($){let X=H5($,{year:!1,month:!1,day:!1,weekday:!1,timeZoneName:!1,dateStyle:!1});if(X.timeStyle!=="long"&&X.timeStyle!=="full"||(delete X.timeStyle,Object.assign(X,{hour:"numeric",minute:"2-digit",second:"2-digit"})),!q3(X)){if(O5($))throw new TypeError(`cannot format Temporal.PlainTime with options [${Object.keys($)}]`);Object.assign(X,{hour:"numeric",minute:"numeric",second:"numeric"})}return X}function Wk($){let X={short:{year:"2-digit",month:"numeric"},medium:{year:"numeric",month:"short"},long:{year:"numeric",month:"long"},full:{year:"numeric",month:"long"}},Y=H5($,{day:!1,hour:!1,minute:!1,second:!1,weekday:!1,dayPeriod:!1,timeZoneName:!1,timeStyle:!1});if("dateStyle"in Y&&Y.dateStyle){let z=Y.dateStyle;delete Y.dateStyle,Object.assign(Y,X[z])}if(!(("year"in Y)||("month"in Y)||("era"in Y))){if(O5($))throw new TypeError(`cannot format PlainYearMonth with options [${Object.keys($)}]`);Object.assign(Y,{year:"numeric",month:"numeric"})}return Y}function Qk($){let X={short:{month:"numeric",day:"numeric"},medium:{month:"short",day:"numeric"},long:{month:"long",day:"numeric"},full:{month:"long",day:"numeric"}},Y=H5($,{year:!1,hour:!1,minute:!1,second:!1,weekday:!1,dayPeriod:!1,timeZoneName:!1,timeStyle:!1});if("dateStyle"in Y&&Y.dateStyle){let z=Y.dateStyle;delete Y.dateStyle,Object.assign(Y,X[z])}if(!("month"in Y)&&!("day"in Y)){if(O5($))throw new TypeError(`cannot format PlainMonthDay with options [${Object.keys($)}]`);Object.assign(Y,{month:"numeric",day:"numeric"})}return Y}function Zk($){let X=H5($,{hour:!1,minute:!1,second:!1,dayPeriod:!1,timeZoneName:!1,timeStyle:!1});if(!_3(X)){if(O5($))throw new TypeError(`cannot format PlainDate with options [${Object.keys($)}]`);Object.assign(X,{year:"numeric",month:"numeric",day:"numeric"})}return X}function Hk($){let X=H5($,{timeZoneName:!1});if((X.timeStyle==="long"||X.timeStyle==="full")&&(delete X.timeStyle,Object.assign(X,{hour:"numeric",minute:"2-digit",second:"2-digit"}),X.dateStyle))Object.assign(X,{short:{year:"numeric",month:"numeric",day:"numeric"},medium:{year:"numeric",month:"short",day:"numeric"},long:{year:"numeric",month:"long",day:"numeric"},full:{year:"numeric",month:"long",day:"numeric",weekday:"long"}}[X.dateStyle]),delete X.dateStyle;if(!q3(X)&&!_3(X)){if(O5($))throw new TypeError(`cannot format PlainDateTime with options [${Object.keys($)}]`);Object.assign(X,{year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"})}return X}function Ok($){let X=$;return q3(X)||_3(X)||(X=Object.assign({},X,{year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"})),X}function _3($){return"year"in $||"month"in $||"day"in $||"weekday"in $||"dateStyle"in $||"era"in $}function q3($){return"hour"in $||"minute"in $||"second"in $||"timeStyle"in $||"dayPeriod"in $||"fractionalSecondDigits"in $}function O5($){return _3($)||q3($)||"dateStyle"in $||"timeStyle"in $||"timeZoneName"in $}function c0($){return D6($)||J6($)||e$($)||v$($)||e6($)||O1($)||s6($)}function Z3($){return c0($)?$:V3($)}function NA($,X){return!(!c0($)||!c0(X)||J6($)&&!J6(X)||D6($)&&!D6(X)||e$($)&&!e$(X)||v$($)&&!v$(X)||e6($)&&!e6(X)||O1($)&&!O1(X)||s6($)&&!s6(X))}function $2($,X){if(J6($)){let Y={isoDate:{year:1970,month:1,day:1},time:E($,N6)};return{epochNs:H4(E(X,uY),Y,"compatible"),formatter:gY(X,UJ)}}if(e6($)){let Y=E($,p),z=E(X,C9);if(Y!==z)throw new RangeError(`cannot format PlainYearMonth with calendar ${Y} in locale with calendar ${z}`);let G=k$(E($,E$),{deltaDays:0,hour:12,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0});return{epochNs:H4(E(X,uY),G,"compatible"),formatter:gY(X,GJ)}}if(O1($)){let Y=E($,p),z=E(X,C9);if(Y!==z)throw new RangeError(`cannot format PlainMonthDay with calendar ${Y} in locale with calendar ${z}`);let G=k$(E($,E$),{deltaDays:0,hour:12,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0});return{epochNs:H4(E(X,uY),G,"compatible"),formatter:gY(X,zJ)}}if(D6($)){let Y=E($,p),z=E(X,C9);if(Y!=="iso8601"&&Y!==z)throw new RangeError(`cannot format PlainDate with calendar ${Y} in locale with calendar ${z}`);let G=k$(E($,E$),{deltaDays:0,hour:12,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0});return{epochNs:H4(E(X,uY),G,"compatible"),formatter:gY(X,YJ)}}if(e$($)){let Y=E($,p),z=E(X,C9);if(Y!=="iso8601"&&Y!==z)throw new RangeError(`cannot format PlainDateTime with calendar ${Y} in locale with calendar ${z}`);let G=E($,W6);return{epochNs:H4(E(X,uY),G,"compatible"),formatter:gY(X,WJ)}}if(v$($))throw new TypeError("Temporal.ZonedDateTime not supported in DateTimeFormat methods. Use toLocaleString() instead.");return s6($)?{epochNs:E($,N$),formatter:gY(X,QJ)}:{}}function EA($){let X=Object.create(null);return X.years=E($,A4),X.months=E($,K4),X.weeks=E($,p4),X.days=E($,_4),X.hours=E($,q4),X.minutes=E($,T4),X.seconds=E($,R4),X.milliseconds=E($,P4),X.microseconds=E($,v4),X.nanoseconds=E($,d4),X}eY.prototype.constructor=V1,Object.defineProperty(V1,"prototype",{value:eY.prototype,writable:!1,enumerable:!1,configurable:!1}),V1.supportedLocalesOf=o9.supportedLocalesOf,l0(V1,"Intl.DateTimeFormat");var{format:wk,formatToParts:Vk}=Intl.DurationFormat?.prototype??Object.create(null);function AV($){Intl.DurationFormat.prototype.resolvedOptions.call(this);let X=EA(q1($));return wk.call(this,X)}Intl.DurationFormat?.prototype&&(Intl.DurationFormat.prototype.format=AV,Intl.DurationFormat.prototype.formatToParts=function($){Intl.DurationFormat.prototype.resolvedOptions.call(this);let X=EA(q1($));return Vk.call(this,X)});var Ft=Object.freeze({__proto__:null,DateTimeFormat:V1,ModifiedIntlDurationFormatPrototypeFormat:AV});class T3{constructor($){if(arguments.length<1)throw new TypeError("missing argument: epochNanoseconds is required");vJ(this,Q3($))}get epochMilliseconds(){return k(this,s6),R1(E(this,N$),"floor")}get epochNanoseconds(){return k(this,s6),pJ(B.BigInt(E(this,N$)))}add($){return k(this,s6),pL("add",this,$)}subtract($){return k(this,s6),pL("subtract",this,$)}until($,X=void 0){return k(this,s6),fL("until",this,$,X)}since($,X=void 0){return k(this,s6),fL("since",this,$,X)}round($){if(k(this,s6),$===void 0)throw new TypeError("options parameter is required");let X=typeof $=="string"?CX("smallestUnit",$):W$($),Y=G2(X),z=u1(X,"halfExpand"),G=i4(X,"smallestUnit","time",p0);return z2(Y,{hour:24,minute:1440,second:86400,millisecond:86400000,microsecond:86400000000,nanosecond:86400000000000}[G],!0),y1(ew(E(this,N$),Y,G,z))}equals($){k(this,s6);let X=I9($),Y=E(this,N$),z=E(X,N$);return B.equal(B.BigInt(Y),B.BigInt(z))}toString($=void 0){k(this,s6);let X=W$($),Y=$5(X),z=u1(X,"trunc"),G=i4(X,"smallestUnit","time",void 0);if(G==="hour")throw new RangeError('smallestUnit must be a time unit other than "hour"');let U=X.timeZone;U!==void 0&&(U=B4(U));let{precision:W,unit:Q,increment:Z}=X5(G,Y);return vL(y1(ew(E(this,N$),Z,Q,z)),U,W)}toJSON(){return k(this,s6),vL(this,void 0,"auto")}toLocaleString($=void 0,X=void 0){return k(this,s6),new V1($,X).format(this)}valueOf(){j8("Instant")}toZonedDateTimeISO($){k(this,s6);let X=B4($);return Q4(E(this,N$),X,"iso8601")}static fromEpochMilliseconds($){return y1(m1(V3($)))}static fromEpochNanoseconds($){return y1(Q3($))}static from($){return I9($)}static compare($,X){let Y=I9($),z=I9(X),G=E(Y,N$),U=E(z,N$);return B.lessThan(G,U)?-1:B.greaterThan(G,U)?1:0}}l0(T3,"Temporal.Instant");class R3{constructor($,X,Y,z="iso8601"){let G=M$($),U=M$(X),W=M$(Y),Q=S4(z===void 0?"iso8601":g6(z));RX(G,U,W),_J(this,{year:G,month:U,day:W},Q)}get calendarId(){return k(this,D6),E(this,p)}get era(){return M4(this,"era")}get eraYear(){return M4(this,"eraYear")}get year(){return M4(this,"year")}get month(){return M4(this,"month")}get monthCode(){return M4(this,"monthCode")}get day(){return M4(this,"day")}get dayOfWeek(){return M4(this,"dayOfWeek")}get dayOfYear(){return M4(this,"dayOfYear")}get weekOfYear(){return M4(this,"weekOfYear")?.week}get yearOfWeek(){return M4(this,"weekOfYear")?.year}get daysInWeek(){return M4(this,"daysInWeek")}get daysInMonth(){return M4(this,"daysInMonth")}get daysInYear(){return M4(this,"daysInYear")}get monthsInYear(){return M4(this,"monthsInYear")}get inLeapYear(){return M4(this,"inLeapYear")}with($,X=void 0){if(k(this,D6),!E6($))throw new TypeError("invalid argument");Y2($);let Y=E(this,p),z=I4(Y,E(this,E$));return z=TX(Y,z,E1(Y,$,["year","month","monthCode","day"],[],"partial")),j4(v8(Y,z,x$(W$(X))),Y)}withCalendar($){k(this,D6);let X=U5($);return j4(E(this,E$),X)}add($,X=void 0){return k(this,D6),dL("add",this,$,X)}subtract($,X=void 0){return k(this,D6),dL("subtract",this,$,X)}until($,X=void 0){return k(this,D6),hL("until",this,$,X)}since($,X=void 0){return k(this,D6),hL("since",this,$,X)}equals($){k(this,D6);let X=j9($);return w0(E(this,E$),E(X,E$))===0&&H0(E(this,p),E(X,p))}toString($=void 0){return k(this,D6),CL(this,e9(W$($)))}toJSON(){return k(this,D6),CL(this)}toLocaleString($=void 0,X=void 0){return k(this,D6),new V1($,X).format(this)}valueOf(){j8("PlainDate")}toPlainDateTime($=void 0){k(this,D6);let X=KJ($);return K1(k$(E(this,E$),X),E(this,p))}toZonedDateTime($){let X,Y;if(k(this,D6),E6($)){let U=$.timeZone;U===void 0?X=B4($):(X=B4(U),Y=$.plainTime)}else X=B4($);let z=E(this,E$),G;return Y===void 0?G=A8(X,z):(Y=_8(Y),G=H4(X,k$(z,E(Y,N6)),"compatible")),Q4(G,X,E(this,p))}toPlainYearMonth(){k(this,D6);let $=E(this,p);return lY(d9($,I4($,E(this,E$)),"constrain"),$)}toPlainMonthDay(){k(this,D6);let $=E(this,p);return dY(Y3($,I4($,E(this,E$)),"constrain"),$)}static from($,X=void 0){return j9($,X)}static compare($,X){let Y=j9($),z=j9(X);return w0(E(Y,E$),E(z,E$))}}function M4($,X){k($,D6);let Y=E($,E$);return Y5($).isoToDate(Y,{[X]:!0})[X]}l0(R3,"Temporal.PlainDate");class P3{constructor($,X,Y,z=0,G=0,U=0,W=0,Q=0,Z=0,H="iso8601"){let O=M$($),w=M$(X),V=M$(Y),D=z===void 0?0:M$(z),N=G===void 0?0:M$(G),F=U===void 0?0:M$(U),L=W===void 0?0:M$(W),K=Q===void 0?0:M$(Q),q=Z===void 0?0:M$(Z),R=S4(H===void 0?"iso8601":g6(H));OV(O,w,V,D,N,F,L,K,q),qJ(this,{isoDate:{year:O,month:w,day:V},time:{hour:D,minute:N,second:F,millisecond:L,microsecond:K,nanosecond:q}},R)}get calendarId(){return k(this,e$),E(this,p)}get year(){return L4(this,"year")}get month(){return L4(this,"month")}get monthCode(){return L4(this,"monthCode")}get day(){return L4(this,"day")}get hour(){return yY(this,"hour")}get minute(){return yY(this,"minute")}get second(){return yY(this,"second")}get millisecond(){return yY(this,"millisecond")}get microsecond(){return yY(this,"microsecond")}get nanosecond(){return yY(this,"nanosecond")}get era(){return L4(this,"era")}get eraYear(){return L4(this,"eraYear")}get dayOfWeek(){return L4(this,"dayOfWeek")}get dayOfYear(){return L4(this,"dayOfYear")}get weekOfYear(){return L4(this,"weekOfYear")?.week}get yearOfWeek(){return L4(this,"weekOfYear")?.year}get daysInWeek(){return L4(this,"daysInWeek")}get daysInYear(){return L4(this,"daysInYear")}get daysInMonth(){return L4(this,"daysInMonth")}get monthsInYear(){return L4(this,"monthsInYear")}get inLeapYear(){return L4(this,"inLeapYear")}with($,X=void 0){if(k(this,e$),!E6($))throw new TypeError("invalid argument");Y2($);let Y=E(this,p),z=E(this,W6),G={...I4(Y,z.isoDate),...z.time};return G=TX(Y,G,E1(Y,$,["year","month","monthCode","day"],["hour","minute","second","millisecond","microsecond","nanosecond"],"partial")),K1(G5(Y,G,x$(W$(X))),Y)}withPlainTime($=void 0){k(this,e$);let X=KJ($);return K1(k$(E(this,W6).isoDate,X),E(this,p))}withCalendar($){k(this,e$);let X=U5($);return K1(E(this,W6),X)}add($,X=void 0){return k(this,e$),lL("add",this,$,X)}subtract($,X=void 0){return k(this,e$),lL("subtract",this,$,X)}until($,X=void 0){return k(this,e$),gL("until",this,$,X)}since($,X=void 0){return k(this,e$),gL("since",this,$,X)}round($){if(k(this,e$),$===void 0)throw new TypeError("options parameter is required");let X=typeof $=="string"?CX("smallestUnit",$):W$($),Y=G2(X),z=u1(X,"halfExpand"),G=i4(X,"smallestUnit","time",p0,["day"]),U={day:1,hour:24,minute:60,second:60,millisecond:1000,microsecond:1000,nanosecond:1000}[G];z2(Y,U,U===1);let W=E(this,W6);return K1(Y===1&&G==="nanosecond"?W:$V(W,Y,G,z),E(this,p))}equals($){k(this,e$);let X=B9($);return sY(E(this,W6),E(X,W6))===0&&H0(E(this,p),E(X,p))}toString($=void 0){k(this,e$);let X=W$($),Y=e9(X),z=$5(X),G=u1(X,"trunc"),U=i4(X,"smallestUnit","time",void 0);if(U==="hour")throw new RangeError('smallestUnit must be a time unit other than "hour"');let{precision:W,unit:Q,increment:Z}=X5(U,z),H=$V(E(this,W6),Z,Q,G);return PX(H),i9(H,E(this,p),W,Y)}toJSON(){return k(this,e$),i9(E(this,W6),E(this,p),"auto")}toLocaleString($=void 0,X=void 0){return k(this,e$),new V1($,X).format(this)}valueOf(){j8("PlainDateTime")}toZonedDateTime($,X=void 0){k(this,e$);let Y=B4($),z=y9(W$(X));return Q4(H4(Y,E(this,W6),z),Y,E(this,p))}toPlainDate(){return k(this,e$),j4(E(this,W6).isoDate,E(this,p))}toPlainTime(){return k(this,e$),h0(E(this,W6).time)}static from($,X=void 0){return B9($,X)}static compare($,X){let Y=B9($),z=B9(X);return sY(E(Y,W6),E(z,W6))}}function L4($,X){k($,e$);let Y=E($,W6).isoDate;return Y5($).isoToDate(Y,{[X]:!0})[X]}function yY($,X){return k($,e$),E($,W6).time[X]}l0(P3,"Temporal.PlainDateTime");class X2{constructor($=0,X=0,Y=0,z=0,G=0,U=0,W=0,Q=0,Z=0,H=0){let O=$===void 0?0:g1($),w=X===void 0?0:g1(X),V=Y===void 0?0:g1(Y),D=z===void 0?0:g1(z),N=G===void 0?0:g1(G),F=U===void 0?0:g1(U),L=W===void 0?0:g1(W),K=Q===void 0?0:g1(Q),q=Z===void 0?0:g1(Z),R=H===void 0?0:g1(H);J3(O,w,V,D,N,F,L,K,q,R),d0(this),R$(this,A4,O),R$(this,K4,w),R$(this,p4,V),R$(this,_4,D),R$(this,q4,N),R$(this,T4,F),R$(this,R4,L),R$(this,P4,K),R$(this,v4,q),R$(this,d4,R)}get years(){return k(this,V6),E(this,A4)}get months(){return k(this,V6),E(this,K4)}get weeks(){return k(this,V6),E(this,p4)}get days(){return k(this,V6),E(this,_4)}get hours(){return k(this,V6),E(this,q4)}get minutes(){return k(this,V6),E(this,T4)}get seconds(){return k(this,V6),E(this,R4)}get milliseconds(){return k(this,V6),E(this,P4)}get microseconds(){return k(this,V6),E(this,v4)}get nanoseconds(){return k(this,V6),E(this,d4)}get sign(){return k(this,V6),U3(this)}get blank(){return k(this,V6),U3(this)===0}with($){k(this,V6);let X=AJ($),{years:Y=E(this,A4),months:z=E(this,K4),weeks:G=E(this,p4),days:U=E(this,_4),hours:W=E(this,q4),minutes:Q=E(this,T4),seconds:Z=E(this,R4),milliseconds:H=E(this,P4),microseconds:O=E(this,v4),nanoseconds:w=E(this,d4)}=X;return new X2(Y,z,G,U,W,Q,Z,H,O,w)}negated(){return k(this,V6),n4(this)}abs(){return k(this,V6),new X2(Math.abs(E(this,A4)),Math.abs(E(this,K4)),Math.abs(E(this,p4)),Math.abs(E(this,_4)),Math.abs(E(this,q4)),Math.abs(E(this,T4)),Math.abs(E(this,R4)),Math.abs(E(this,P4)),Math.abs(E(this,v4)),Math.abs(E(this,d4)))}add($){return k(this,V6),cL("add",this,$)}subtract($){return k(this,V6),cL("subtract",this,$)}round($){if(k(this,V6),$===void 0)throw new TypeError("options parameter is required");let X=b0(this),Y=typeof $=="string"?CX("smallestUnit",$):W$($),z=i4(Y,"largestUnit","datetime",void 0,["auto"]),{plainRelativeTo:G,zonedRelativeTo:U}=bw(Y),W=G2(Y),Q=u1(Y,"halfExpand"),Z=i4(Y,"smallestUnit","datetime",void 0),H=!0;Z||(H=!1,Z="nanosecond");let O=y0(X,Z),w=!0;if(z||(w=!1,z=O),z==="auto"&&(z=O),!H&&!w)throw new RangeError("at least one of smallestUnit or largestUnit is required");if(y0(z,Z)!==z)throw new RangeError(`largestUnit ${z} cannot be smaller than smallestUnit ${Z}`);let V={hour:24,minute:60,second:60,millisecond:1000,microsecond:1000,nanosecond:1000}[Z];if(V!==void 0&&z2(W,V,!1),W>1&&f0(Z)==="date"&&z!==Z)throw new RangeError("For calendar units with roundingIncrement > 1, use largestUnit = smallestUnit");if(U){let N=cY(this),F=E(U,m$),L=E(U,p),K=E(U,N$);return N=cJ(K,k9(K,F,L,N),F,L,z,W,Z,Q),f0(z)==="date"&&(z="hour"),_1(N,z)}if(G){let N=Q0(this),F=aY({deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0},N.time),L=E(G,E$),K=E(G,p),q=D1(K,L,Z4(N.date,F.deltaDays),"constrain");return N=uJ(k$(L,{deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0}),k$(q,F),K,z,W,Z,Q),_1(N,z)}if(U0(X))throw new RangeError(`a starting point is required for ${X}s balancing`);if(U0(z))throw new RangeError(`a starting point is required for ${z}s balancing`);let D=Q0(this);if(Z==="day"){let{quotient:N,remainder:F}=D.time.divmod(ez),L=D.date.days+N+m9(F,"day");L=q8(L,W,Q),D=m0({years:0,months:0,weeks:0,days:L},C$.ZERO)}else D=m0({years:0,months:0,weeks:0,days:0},W3(D.time,W,Z,Q));return _1(D,z)}total($){if(k(this,V6),$===void 0)throw new TypeError("options argument is required");let X=typeof $=="string"?CX("unit",$):W$($),{plainRelativeTo:Y,zonedRelativeTo:z}=bw(X),G=i4(X,"unit","datetime",p0);if(z){let W=cY(this),Q=E(z,m$),Z=E(z,p),H=E(z,N$);return function(O,w,V,D,N){return f0(N)==="time"?m9(C$.fromEpochNsDiff(w,O),N):bL(yJ(O,w,V,D,N),w,T1(V,O),V,D,N)}(H,k9(H,Q,Z,W),Q,Z,G)}if(Y){let W=Q0(this),Q=aY({deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0},W.time),Z=E(Y,E$),H=E(Y,p),O=D1(H,Z,Z4(W.date,Q.deltaDays),"constrain");return function(w,V,D,N){if(sY(w,V)==0)return 0;PX(w),PX(V);let F=gJ(w,V,D,N);return N==="nanosecond"?B.toNumber(F.time.totalNs):bL(F,$4(V),w,null,D,N)}(k$(Z,{deltaDays:0,hour:0,minute:0,second:0,millisecond:0,microsecond:0,nanosecond:0}),k$(O,Q),H,G)}let U=b0(this);if(U0(U))throw new RangeError(`a starting point is required for ${U}s total`);if(U0(G))throw new RangeError(`a starting point is required for ${G}s total`);return m9(Q0(this).time,G)}toString($=void 0){k(this,V6);let X=W$($),Y=$5(X),z=u1(X,"trunc"),G=i4(X,"smallestUnit","time",void 0);if(G==="hour"||G==="minute")throw new RangeError('smallestUnit must be a time unit other than "hours" or "minutes"');let{precision:U,unit:W,increment:Q}=X5(G,Y);if(W==="nanosecond"&&Q===1)return oz(this,U);let Z=b0(this),H=cY(this),O=W3(H.time,Q,W,z);return H=m0(H.date,O),oz(_1(H,y0(Z,"second")),U)}toJSON(){return k(this,V6),oz(this,"auto")}toLocaleString($=void 0,X=void 0){if(k(this,V6),typeof Intl.DurationFormat=="function"){let Y=new Intl.DurationFormat($,X);return AV.call(Y,this)}return console.warn("Temporal.Duration.prototype.toLocaleString() requires Intl.DurationFormat."),oz(this,"auto")}valueOf(){j8("Duration")}static from($){return q1($)}static compare($,X,Y=void 0){let z=q1($),G=q1(X),U=W$(Y),{plainRelativeTo:W,zonedRelativeTo:Q}=bw(U);if(E(z,A4)===E(G,A4)&&E(z,K4)===E(G,K4)&&E(z,p4)===E(G,p4)&&E(z,_4)===E(G,_4)&&E(z,q4)===E(G,q4)&&E(z,T4)===E(G,T4)&&E(z,R4)===E(G,R4)&&E(z,P4)===E(G,P4)&&E(z,v4)===E(G,v4)&&E(z,d4)===E(G,d4))return 0;let Z=b0(z),H=b0(G),O=cY(z),w=cY(G);if(Q&&(f0(Z)==="date"||f0(H)==="date")){let L=E(Q,m$),K=E(Q,p),q=E(Q,N$),R=k9(q,L,K,O),_=k9(q,L,K,w);return l4(B.toNumber(B.subtract(R,_)))}let V=O.date.days,D=w.date.days;if(U0(Z)||U0(H)){if(!W)throw new RangeError("A starting point is required for years, months, or weeks comparison");V=kL(O.date,W),D=kL(w.date,W)}let N=O.time.add24HourDays(V),F=w.time.add24HourDays(D);return N.cmp(F)}}l0(X2,"Temporal.Duration");class v3{constructor($,X,Y="iso8601",z=1972){let G=M$($),U=M$(X),W=S4(Y===void 0?"iso8601":g6(Y)),Q=M$(z);RX(Q,G,U),TJ(this,{year:Q,month:G,day:U},W)}get monthCode(){return tL(this,"monthCode")}get day(){return tL(this,"day")}get calendarId(){return k(this,O1),E(this,p)}with($,X=void 0){if(k(this,O1),!E6($))throw new TypeError("invalid argument");Y2($);let Y=E(this,p),z=I4(Y,E(this,E$),"month-day");return z=TX(Y,z,E1(Y,$,["year","month","monthCode","day"],[],"partial")),dY(Y3(Y,z,x$(W$(X))),Y)}equals($){k(this,O1);let X=RL($);return w0(E(this,E$),E(X,E$))===0&&H0(E(this,p),E(X,p))}toString($=void 0){return k(this,O1),BL(this,e9(W$($)))}toJSON(){return k(this,O1),BL(this)}toLocaleString($=void 0,X=void 0){return k(this,O1),new V1($,X).format(this)}valueOf(){j8("PlainMonthDay")}toPlainDate($){if(k(this,O1),!E6($))throw new TypeError("argument should be an object");let X=E(this,p);return j4(v8(X,TX(X,I4(X,E(this,E$),"month-day"),E1(X,$,["year"],[],[])),"constrain"),X)}static from($,X=void 0){return RL($,X)}}function tL($,X){k($,O1);let Y=E($,E$);return Y5($).isoToDate(Y,{[X]:!0})[X]}function hw($){return T1($,GV())}l0(v3,"Temporal.PlainMonthDay");var FA={instant:()=>y1(GV()),plainDateTimeISO:($=R9())=>K1(hw(B4($)),"iso8601"),plainDateISO:($=R9())=>j4(hw(B4($)).isoDate,"iso8601"),plainTimeISO:($=R9())=>h0(hw(B4($)).time),timeZoneId:()=>R9(),zonedDateTimeISO:($=R9())=>{let X=B4($);return Q4(GV(),X,"iso8601")},[Symbol.toStringTag]:"Temporal.Now"};Object.defineProperty(FA,Symbol.toStringTag,{value:"Temporal.Now",writable:!1,enumerable:!1,configurable:!0});class w5{constructor($=0,X=0,Y=0,z=0,G=0,U=0){let W=$===void 0?0:M$($),Q=X===void 0?0:M$(X),Z=Y===void 0?0:M$(Y),H=z===void 0?0:M$(z),O=G===void 0?0:M$(G),w=U===void 0?0:M$(U);L3(W,Q,Z,H,O,w),RJ(this,{hour:W,minute:Q,second:Z,millisecond:H,microsecond:O,nanosecond:w})}get hour(){return k(this,J6),E(this,N6).hour}get minute(){return k(this,J6),E(this,N6).minute}get second(){return k(this,J6),E(this,N6).second}get millisecond(){return k(this,J6),E(this,N6).millisecond}get microsecond(){return k(this,J6),E(this,N6).microsecond}get nanosecond(){return k(this,J6),E(this,N6).nanosecond}with($,X=void 0){if(k(this,J6),!E6($))throw new TypeError("invalid argument");Y2($);let Y=rw($,"partial"),z=rw(this),{hour:G,minute:U,second:W,millisecond:Q,microsecond:Z,nanosecond:H}=Object.assign(z,Y),O=x$(W$(X));return{hour:G,minute:U,second:W,millisecond:Q,microsecond:Z,nanosecond:H}=E3(G,U,W,Q,Z,H,O),new w5(G,U,W,Q,Z,H)}add($){return k(this,J6),iL("add",this,$)}subtract($){return k(this,J6),iL("subtract",this,$)}until($,X=void 0){return k(this,J6),yL("until",this,$,X)}since($,X=void 0){return k(this,J6),yL("since",this,$,X)}round($){if(k(this,J6),$===void 0)throw new TypeError("options parameter is required");let X=typeof $=="string"?CX("smallestUnit",$):W$($),Y=G2(X),z=u1(X,"halfExpand"),G=i4(X,"smallestUnit","time",p0);return z2(Y,{hour:24,minute:60,second:60,millisecond:1000,microsecond:1000,nanosecond:1000}[G],!1),h0(XV(E(this,N6),Y,G,z))}equals($){k(this,J6);let X=_8($);return YV(E(this,N6),E(X,N6))===0}toString($=void 0){k(this,J6);let X=W$($),Y=$5(X),z=u1(X,"trunc"),G=i4(X,"smallestUnit","time",void 0);if(G==="hour")throw new RangeError('smallestUnit must be a time unit other than "hour"');let{precision:U,unit:W,increment:Q}=X5(G,Y);return jL(XV(E(this,N6),Q,W,z),U)}toJSON(){return k(this,J6),jL(E(this,N6),"auto")}toLocaleString($=void 0,X=void 0){return k(this,J6),new V1($,X).format(this)}valueOf(){j8("PlainTime")}static from($,X=void 0){return _8($,X)}static compare($,X){let Y=_8($),z=_8(X);return YV(E(Y,N6),E(z,N6))}}l0(w5,"Temporal.PlainTime");class C3{constructor($,X,Y="iso8601",z=1){let G=M$($),U=M$(X),W=S4(Y===void 0?"iso8601":g6(Y)),Q=M$(z);RX(G,U,Q),PJ(this,{year:G,month:U,day:Q},W)}get year(){return S0(this,"year")}get month(){return S0(this,"month")}get monthCode(){return S0(this,"monthCode")}get calendarId(){return k(this,e6),E(this,p)}get era(){return S0(this,"era")}get eraYear(){return S0(this,"eraYear")}get daysInMonth(){return S0(this,"daysInMonth")}get daysInYear(){return S0(this,"daysInYear")}get monthsInYear(){return S0(this,"monthsInYear")}get inLeapYear(){return S0(this,"inLeapYear")}with($,X=void 0){if(k(this,e6),!E6($))throw new TypeError("invalid argument");Y2($);let Y=E(this,p),z=I4(Y,E(this,E$),"year-month");return z=TX(Y,z,E1(Y,$,["year","month","monthCode"],[],"partial")),lY(d9(Y,z,x$(W$(X))),Y)}add($,X=void 0){return k(this,e6),rL("add",this,$,X)}subtract($,X=void 0){return k(this,e6),rL("subtract",this,$,X)}until($,X=void 0){return k(this,e6),mL("until",this,$,X)}since($,X=void 0){return k(this,e6),mL("since",this,$,X)}equals($){k(this,e6);let X=x9($);return w0(E(this,E$),E(X,E$))===0&&H0(E(this,p),E(X,p))}toString($=void 0){return k(this,e6),IL(this,e9(W$($)))}toJSON(){return k(this,e6),IL(this)}toLocaleString($=void 0,X=void 0){return k(this,e6),new V1($,X).format(this)}valueOf(){j8("PlainYearMonth")}toPlainDate($){if(k(this,e6),!E6($))throw new TypeError("argument should be an object");let X=E(this,p);return j4(v8(X,TX(X,I4(X,E(this,E$),"year-month"),E1(X,$,["day"],[],[])),"constrain"),X)}static from($,X=void 0){return x9($,X)}static compare($,X){let Y=x9($),z=x9(X);return w0(E(Y,E$),E(z,E$))}}function S0($,X){k($,e6);let Y=E($,E$);return Y5($).isoToDate(Y,{[X]:!0})[X]}l0(C3,"Temporal.PlainYearMonth");var Dk=V1.prototype.resolvedOptions;class j3{constructor($,X,Y="iso8601"){if(arguments.length<1)throw new TypeError("missing argument: epochNanoseconds is required");let z=Q3($),G=g6(X),{tzName:U,offsetMinutes:W}=T8(G);if(W===void 0){let Q=G3(U);if(!Q)throw new RangeError(`unknown time zone ${U}`);G=Q.identifier}else G=QV(W);CJ(this,z,G,S4(Y===void 0?"iso8601":g6(Y)))}get calendarId(){return k(this,v$),E(this,p)}get timeZoneId(){return k(this,v$),E(this,m$)}get year(){return J4(this,"year")}get month(){return J4(this,"month")}get monthCode(){return J4(this,"monthCode")}get day(){return J4(this,"day")}get hour(){return mY(this,"hour")}get minute(){return mY(this,"minute")}get second(){return mY(this,"second")}get millisecond(){return mY(this,"millisecond")}get microsecond(){return mY(this,"microsecond")}get nanosecond(){return mY(this,"nanosecond")}get era(){return J4(this,"era")}get eraYear(){return J4(this,"eraYear")}get epochMilliseconds(){return k(this,v$),R1(E(this,N$),"floor")}get epochNanoseconds(){return k(this,v$),pJ(E(this,N$))}get dayOfWeek(){return J4(this,"dayOfWeek")}get dayOfYear(){return J4(this,"dayOfYear")}get weekOfYear(){return J4(this,"weekOfYear")?.week}get yearOfWeek(){return J4(this,"weekOfYear")?.year}get hoursInDay(){k(this,v$);let $=E(this,m$),X=z0(this).isoDate,Y=r4(X.year,X.month,X.day+1),z=A8($,X),G=A8($,Y);return m9(C$.fromEpochNsDiff(G,z),"hour")}get daysInWeek(){return J4(this,"daysInWeek")}get daysInMonth(){return J4(this,"daysInMonth")}get daysInYear(){return J4(this,"daysInYear")}get monthsInYear(){return J4(this,"monthsInYear")}get inLeapYear(){return J4(this,"inLeapYear")}get offset(){return k(this,v$),nw(g0(E(this,m$),E(this,N$)))}get offsetNanoseconds(){return k(this,v$),g0(E(this,m$),E(this,N$))}with($,X=void 0){if(k(this,v$),!E6($))throw new TypeError("invalid zoned-date-time-like");Y2($);let Y=E(this,p),z=E(this,m$),G=g0(z,E(this,N$)),U=z0(this),W={...I4(Y,U.isoDate),...U.time,offset:nw(G)};W=TX(Y,W,E1(Y,$,["year","month","monthCode","day"],["hour","minute","second","millisecond","microsecond","nanosecond","offset"],"partial"));let Q=W$(X),Z=y9(Q),H=tz(Q,"prefer"),O=G5(Y,W,x$(Q)),w=U2(W.offset);return Q4(X3(O.isoDate,O.time,"option",w,z,Z,H,!1),z,Y)}withPlainTime($=void 0){k(this,v$);let X=E(this,m$),Y=E(this,p),z=z0(this).isoDate,G;return G=$===void 0?A8(X,z):H4(X,k$(z,E(_8($),N6)),"compatible"),Q4(G,X,Y)}withTimeZone($){k(this,v$);let X=B4($);return Q4(E(this,N$),X,E(this,p))}withCalendar($){k(this,v$);let X=U5($);return Q4(E(this,N$),E(this,m$),X)}add($,X=void 0){return k(this,v$),nL("add",this,$,X)}subtract($,X=void 0){return k(this,v$),nL("subtract",this,$,X)}until($,X=void 0){return k(this,v$),uL("until",this,$,X)}since($,X=void 0){return k(this,v$),uL("since",this,$,X)}round($){if(k(this,v$),$===void 0)throw new TypeError("options parameter is required");let X=typeof $=="string"?CX("smallestUnit",$):W$($),Y=G2(X),z=u1(X,"halfExpand"),G=i4(X,"smallestUnit","time",p0,["day"]),U={day:1,hour:24,minute:60,second:60,millisecond:1000,microsecond:1000,nanosecond:1000}[G];if(z2(Y,U,U===1),G==="nanosecond"&&Y===1)return Q4(E(this,N$),E(this,m$),E(this,p));let W=E(this,m$),Q=E(this,N$),Z=z0(this),H;if(G==="day"){let O=Z.isoDate,w=r4(O.year,O.month,O.day+1),V=A8(W,O),D=A8(W,w),N=B.subtract(D,V);H=C$.fromEpochNsDiff(Q,V).round(N,z).addToEpochNs(V)}else{let O=$V(Z,Y,G,z),w=g0(W,Q);H=X3(O.isoDate,O.time,"option",w,W,"compatible","prefer",!1)}return Q4(H,W,E(this,p))}equals($){k(this,v$);let X=S9($),Y=E(this,N$),z=E(X,N$);return!!B.equal(B.BigInt(Y),B.BigInt(z))&&!!jJ(E(this,m$),E(X,m$))&&H0(E(this,p),E(X,p))}toString($=void 0){k(this,v$);let X=W$($),Y=e9(X),z=$5(X),G=function(w){return u0(w,"offset",["auto","never"],"auto")}(X),U=u1(X,"trunc"),W=i4(X,"smallestUnit","time",void 0);if(W==="hour")throw new RangeError('smallestUnit must be a time unit other than "hour"');let Q=function(w){return u0(w,"timeZoneName",["auto","never","critical"],"auto")}(X),{precision:Z,unit:H,increment:O}=X5(W,z);return xL(this,Z,Y,Q,G,{unit:H,increment:O,roundingMode:U})}toLocaleString($=void 0,X=void 0){k(this,v$);let Y=W$(X),z=Object.create(null);if(function(Q,Z,H,O){if(Z==null)return;let w=Reflect.ownKeys(Z);for(let V=0;V<w.length;V++){let D=w[V];if(!H.some((N)=>Object.is(N,D))&&Object.prototype.propertyIsEnumerable.call(Z,D)){let N=Z[D];Q[D]=N}}}(z,Y,["timeZone"]),Y.timeZone!==void 0)throw new TypeError("ZonedDateTime toLocaleString does not accept a timeZone option");if(z.year===void 0&&z.month===void 0&&z.day===void 0&&z.era===void 0&&z.weekday===void 0&&z.dateStyle===void 0&&z.hour===void 0&&z.minute===void 0&&z.second===void 0&&z.fractionalSecondDigits===void 0&&z.timeStyle===void 0&&z.dayPeriod===void 0&&z.timeZoneName===void 0&&(z.timeZoneName="short"),z.timeZone=E(this,m$),SL(z.timeZone))throw new RangeError("toLocaleString does not currently support offset time zones");let G=new V1($,z),U=Dk.call(G).calendar,W=E(this,p);if(W!=="iso8601"&&U!=="iso8601"&&!H0(U,W))throw new RangeError(`cannot format ZonedDateTime with calendar ${W} in locale with calendar ${U}`);return G.format(y1(E(this,N$)))}toJSON(){return k(this,v$),xL(this,"auto")}valueOf(){j8("ZonedDateTime")}startOfDay(){k(this,v$);let $=E(this,m$);return Q4(A8($,z0(this).isoDate),$,E(this,p))}getTimeZoneTransition($){k(this,v$);let X=E(this,m$);if($===void 0)throw new TypeError("options parameter is required");let Y=u0(typeof $=="string"?CX("direction",$):W$($),"direction",["next","previous"],p0);if(Y===void 0)throw new TypeError("direction option is required");if(SL(X)||X==="UTC")return null;let z=E(this,N$),G=Y==="next"?HV(X,z):tw(X,z);return G===null?null:Q4(G,X,E(this,p))}toInstant(){return k(this,v$),y1(E(this,N$))}toPlainDate(){return k(this,v$),j4(z0(this).isoDate,E(this,p))}toPlainTime(){return k(this,v$),h0(z0(this).time)}toPlainDateTime(){return k(this,v$),K1(z0(this),E(this,p))}static from($,X=void 0){return S9($,X)}static compare($,X){let Y=S9($),z=S9(X),G=E(Y,N$),U=E(z,N$);return B.lessThan(B.BigInt(G),B.BigInt(U))?-1:B.greaterThan(B.BigInt(G),B.BigInt(U))?1:0}}function z0($){return T1(E($,m$),E($,N$))}function J4($,X){k($,v$);let Y=z0($).isoDate;return Y5($).isoToDate(Y,{[X]:!0})[X]}function mY($,X){return k($,v$),z0($).time[X]}l0(j3,"Temporal.ZonedDateTime");var B3=Object.freeze({__proto__:null,Duration:X2,Instant:T3,Now:FA,PlainDate:R3,PlainDateTime:P3,PlainMonthDay:v3,PlainTime:w5,PlainYearMonth:C3,ZonedDateTime:j3}),Mt=class ${toTemporalInstant(){return y1(m1(Date.prototype.valueOf.call(this)))}}.prototype.toTemporalInstant,Nk=[T3,R3,P3,X2,v3,w5,C3,j3];for(let $ of Nk){let X=Object.getOwnPropertyDescriptor($,"prototype");(X.configurable||X.enumerable||X.writable)&&(X.configurable=!1,X.enumerable=!1,X.writable=!1,Object.defineProperty($,"prototype",X))}var Ek=($)=>{let X=o8($,{key:"\uD83D\uDD0D Atom Token Index (Internal)",default:()=>{let Y=new Map;for(let[z,G]of $.atoms){if($Y(z))continue;let U=L0(G);if(G.family){let W=Y.get(G.family.key);if(!W||!("familyMembers"in W))W={key:G.family.key,familyMembers:new Map},Y.set(G.family.key,W);W.familyMembers.set(G.family.subKey,U)}else Y.set(z,U)}return Y},effects:[({setSelf:Y})=>{$.on.atomCreation.subscribe("introspection",(z)=>{if($Y(z.key))return;Y((G)=>{if(z.family){let{key:U,subKey:W}=z.family,Q=G.get(U);if(Q===void 0||!("familyMembers"in Q))Q={key:U,familyMembers:new Map},G.set(U,Q);Q.familyMembers.set(W,z)}else G.set(z.key,z);return G})}),$.on.atomDisposal.subscribe("introspection",(z)=>{Y((G)=>{if(z.family){let{key:U,subKey:W}=z.family,Q=G.get(U);if(Q&&"familyMembers"in Q){if(Q.familyMembers.delete(W),Q.familyMembers.size===0)G.delete(U)}}else G.delete(z.key);return G})})}]},void 0);return oX($,{key:"\uD83D\uDD0D Atom Token Index",get:({get:Y})=>Y(X)})},Fk=($)=>{let X=o8($,{key:"\uD83D\uDD0D Selector Token Index (Internal)",default:()=>{let Y=new Map;for(let z of[$.readonlySelectors,$.writableSelectors])for(let[G,U]of z){if($Y(G))continue;let W=L0(U);if(U.family){let Q=Y.get(U.family.key);if(!Q||!("familyMembers"in Q))Q={key:U.family.key,familyMembers:new Map},Y.set(U.family.key,Q);Q.familyMembers.set(U.family.subKey,W)}else Y.set(G,W)}return Y},effects:[({setSelf:Y})=>{$.on.selectorCreation.subscribe("introspection",(z)=>{if($Y(z.key))return;Y((G)=>{if(z.family){let{key:U,subKey:W}=z.family,Q=G.get(U);if(Q===void 0||!("familyMembers"in Q))Q={key:U,familyMembers:new Map},G.set(U,Q);Q.familyMembers.set(W,z)}else G.set(z.key,z);return G})}),$.on.selectorDisposal.subscribe("introspection",(z)=>{Y((G)=>{if(z.family){let{key:U,subKey:W}=z.family,Q=G.get(U);if(Q&&"familyMembers"in Q){if(Q.familyMembers.delete(W),Q.familyMembers.size===0)G.delete(U)}}else G.delete(z.key);return G})})}]},void 0);return oX($,{key:"\uD83D\uDD0D Selector Token Index",get:({get:Y})=>Y(X)})};var KV=class{supported;constructor($){this.supported=$}refine($){for(let[X,Y]of Object.entries(this.supported))try{if(Y($)===!0&&Y!==Boolean)return{type:X,data:$}}catch(z){try{if($ instanceof Y)return{type:X,data:$}}catch(G){}}return null}},LA=new KV({number:($)=>typeof $==="number",string:($)=>typeof $==="string",boolean:($)=>typeof $==="boolean",null:($)=>$===null});function JA($){if(!$)return!1;return Object.getPrototypeOf($)===Object.prototype}var AA=new KV({object:JA,array:($)=>Array.isArray($)}),Mk=new KV({...LA.supported,...AA.supported}),I3=($)=>{if($===void 0)return"undefined";let X=Mk.refine($);if(X)return X.type;return Object.getPrototypeOf($).constructor.name};var Kt=class ${store;auditorCreatedAt=performance.now();statesCreatedAt=new Map;atomIndex;selectorIndex;disposed=!1;unsubscribeFromAtomCreation;unsubscribeFromAtomDisposal;unsubscribeFromSelectorCreation;unsubscribeFromSelectorDisposal;constructor(X=R6.STORE){this.store=X,this.atomIndex=Ek(this.store),this.selectorIndex=Fk(this.store),this.unsubscribeFromAtomCreation=this.store.on.atomCreation.subscribe(`auditor-${this.auditorCreatedAt}`,({key:Y})=>{this.statesCreatedAt.set(Y,performance.now()-this.auditorCreatedAt)}),this.unsubscribeFromAtomDisposal=this.store.on.atomDisposal.subscribe(`auditor-${this.auditorCreatedAt}`,({key:Y})=>{this.statesCreatedAt.delete(Y)}),this.unsubscribeFromSelectorCreation=this.store.on.selectorCreation.subscribe(`auditor-${this.auditorCreatedAt}`,({key:Y})=>{this.statesCreatedAt.set(Y,performance.now()-this.auditorCreatedAt)}),this.unsubscribeFromSelectorDisposal=this.store.on.selectorDisposal.subscribe(`auditor-${this.auditorCreatedAt}`,({key:Y})=>{this.statesCreatedAt.delete(Y)})}static DEFAULT_LIST_RESOURCES_PARAM={atomFamilies:!0,selectorFamilies:!0};listResources(X=$.DEFAULT_LIST_RESOURCES_PARAM){if(this.disposed)throw new Error("This Auditor has been disposed");let Y=sU(this.atomIndex),z=sU(this.selectorIndex),G=[...Y.values()].filter((Z)=>("familyMembers"in Z)),U=[...z.values()].filter((Z)=>("familyMembers"in Z)),W=performance.now(),Q=[];if(X.atomFamilies)for(let Z of G){let H=Z.familyMembers.values();for(let O of H){let V=this.statesCreatedAt.get(O.key)??this.auditorCreatedAt,D=W-V;Q.push([O,D])}}if(X.selectorFamilies)for(let Z of U){let H=Z.familyMembers.values();for(let O of H){let V=this.statesCreatedAt.get(O.key)??this.auditorCreatedAt,D=W-V;Q.push([O,D])}}return Q}[Symbol.dispose](){this.unsubscribeFromAtomCreation(),this.unsubscribeFromAtomDisposal(),this.unsubscribeFromSelectorCreation(),this.unsubscribeFromSelectorDisposal(),this.disposed=!0}},MA=($,X)=>{let Y=(z,G)=>{let W=((Z,H)=>{let O=X(Z,H);if(O)return O;return null})(z,G);if(W?.jobComplete??W?.pathComplete)return W;let Q=Array.isArray(G)?G.map((Z,H)=>[H,Z]):JA(G)?Object.entries(G):[];for(let[Z,H]of Q){let O=Y([...z,Z],H);if(O?.jobComplete)return O}return{}};Y([],$)};function Lk($,X){return{summary:`${$<X?"+":"-"}${Math.abs($-X)} (${$} \u2192 ${X})`}}function Jk($,X){return{summary:`${$.length<X.length?"+":"-"}${Math.abs($.length-X.length)} ("${$}" \u2192 "${X}")`}}function Ak($,X){return{summary:`${$} \u2192 ${X}`}}function KA($,X,Y){let z="",G=[],U=[],W=[];return MA($,(Q,Z)=>{let H;for(H of Q){let O=X[H];if(O===void 0)U.push([H,JSON.stringify(Z)]);else{let w=Y(Z,O);if(w.summary!=="No Change")W.push([H,w])}}}),MA(X,(Q,Z)=>{let H;for(H of Q)if($[H]===void 0)G.push([H,JSON.stringify(Z)])}),z=`\uFF5E${W.length} \uFF0B${G.length} \uFF0D${U.length}`,{summary:z,added:G,removed:U,changed:W}}function Kk($,X,Y){return KA($,X,Y)}var _k=class{leafRefinery;treeRefinery;leafDiffers;treeDiffers;constructor($,X,Y){this.leafRefinery=$,this.treeRefinery=X,this.leafDiffers={},this.treeDiffers={};for(let z of Object.keys($.supported)){let G=Y[z];this.leafDiffers[z]=G}for(let z of Object.keys(X.supported)){let G=Y[z];this.treeDiffers[z]=G}}diff($,X){if($===X)return{summary:"No Change"};let Y=this.leafRefinery.refine($)??this.treeRefinery.refine($),z=this.leafRefinery.refine(X)??this.treeRefinery.refine(X);if(Y!==null&&z!==null){if(Y.type===z.type){if(Y.type in this.leafDiffers)return this.leafDiffers[Y.type](Y.data,z.data);if(Y.type in this.treeDiffers)return this.treeDiffers[Y.type](Y.data,z.data,(Q,Z)=>this.diff(Q,Z))}}let G=I3($),U=I3(X);if(G===U)return{summary:`${G} \u2192 ${U}`};return{summary:`Type change: ${G} \u2192 ${U}`}}},_t=new _k(LA,AA,{number:Lk,string:Jk,boolean:Ak,null:()=>({summary:"No Change"}),object:KA,array:Kk});var A=Symbol.for("drizzle:entityKind");function b($,X){if(!$||typeof $!=="object")return!1;if($ instanceof X)return!0;if(!Object.prototype.hasOwnProperty.call(X,A))throw new Error(`Class "${X.name??"<unknown>"}" doesn't look like a Drizzle entity. If this is incorrect and the class is provided by Drizzle, please report this as a bug.`);let Y=Object.getPrototypeOf($).constructor;if(Y)while(Y){if(A in Y&&Y[A]===X[A])return!0;Y=Object.getPrototypeOf(Y)}return!1}class r${constructor($,X){this.table=$,this.config=X,this.name=X.name,this.keyAsName=X.keyAsName,this.notNull=X.notNull,this.default=X.default,this.defaultFn=X.defaultFn,this.onUpdateFn=X.onUpdateFn,this.hasDefault=X.hasDefault,this.primary=X.primaryKey,this.isUnique=X.isUnique,this.uniqueName=X.uniqueName,this.uniqueType=X.uniqueType,this.dataType=X.dataType,this.columnType=X.columnType,this.generated=X.generated,this.generatedIdentity=X.generatedIdentity}static[A]="Column";name;keyAsName;primary;notNull;default;defaultFn;onUpdateFn;hasDefault;isUnique;uniqueName;uniqueType;dataType;columnType;enumValues=void 0;generated=void 0;generatedIdentity=void 0;config;mapFromDriverValue($){return $}mapToDriverValue($){return $}shouldDisableInsert(){return this.config.generated!==void 0&&this.config.generated.type!=="byDefault"}}class _V{static[A]="ColumnBuilder";config;constructor($,X,Y){this.config={name:$,keyAsName:$==="",notNull:!1,default:void 0,hasDefault:!1,primaryKey:!1,isUnique:!1,uniqueName:void 0,uniqueType:void 0,dataType:X,columnType:Y,generated:void 0}}$type(){return this}notNull(){return this.config.notNull=!0,this}default($){return this.config.default=$,this.config.hasDefault=!0,this}$defaultFn($){return this.config.defaultFn=$,this.config.hasDefault=!0,this}$default=this.$defaultFn;$onUpdateFn($){return this.config.onUpdateFn=$,this.config.hasDefault=!0,this}$onUpdate=this.$onUpdateFn;primaryKey(){return this.config.primaryKey=!0,this.config.notNull=!0,this}setName($){if(this.config.name!=="")return;this.config.name=$}}var c1=Symbol.for("drizzle:Name");class qV{static[A]="PgForeignKeyBuilder";reference;_onUpdate="no action";_onDelete="no action";constructor($,X){if(this.reference=()=>{let{name:Y,columns:z,foreignColumns:G}=$();return{name:Y,columns:z,foreignTable:G[0].table,foreignColumns:G}},X)this._onUpdate=X.onUpdate,this._onDelete=X.onDelete}onUpdate($){return this._onUpdate=$===void 0?"no action":$,this}onDelete($){return this._onDelete=$===void 0?"no action":$,this}build($){return new _A($,this)}}class _A{constructor($,X){this.table=$,this.reference=X.reference,this.onUpdate=X._onUpdate,this.onDelete=X._onDelete}static[A]="PgForeignKey";reference;onUpdate;onDelete;getName(){let{name:$,columns:X,foreignColumns:Y}=this.reference(),z=X.map((W)=>W.name),G=Y.map((W)=>W.name),U=[this.table[c1],...z,Y[0].table[c1],...G];return $??`${U.join("_")}_fk`}}function x3($,...X){return $(...X)}function qA($,X){return`${$[c1]}_${X.join("_")}_unique`}function TA($,X,Y){for(let z=X;z<$.length;z++){let G=$[z];if(G==="\\"){z++;continue}if(G==='"')return[$.slice(X,z).replace(/\\/g,""),z+1];if(Y)continue;if(G===","||G==="}")return[$.slice(X,z).replace(/\\/g,""),z]}return[$.slice(X).replace(/\\/g,""),$.length]}function RA($,X=0){let Y=[],z=X,G=!1;while(z<$.length){let U=$[z];if(U===","){if(G||z===X)Y.push("");G=!0,z++;continue}if(G=!1,U==="\\"){z+=2;continue}if(U==='"'){let[Z,H]=TA($,z+1,!0);Y.push(Z),z=H;continue}if(U==="}")return[Y,z+1];if(U==="{"){let[Z,H]=RA($,z+1);Y.push(Z),z=H;continue}let[W,Q]=TA($,z,!1);Y.push(W),z=Q}return[Y,z]}function PA($){let[X]=RA($,1);return X}function TV($){return`{${$.map((X)=>{if(Array.isArray(X))return TV(X);if(typeof X==="string")return`"${X.replace(/\\/g,"\\\\").replace(/"/g,"\\\"")}"`;return`${X}`}).join(",")}}`}class X$ extends _V{foreignKeyConfigs=[];static[A]="PgColumnBuilder";array($){return new CA(this.config.name,this,$)}references($,X={}){return this.foreignKeyConfigs.push({ref:$,actions:X}),this}unique($,X){return this.config.isUnique=!0,this.config.uniqueName=$,this.config.uniqueType=X?.nulls,this}generatedAlwaysAs($){return this.config.generated={as:$,type:"always",mode:"stored"},this}buildForeignKeys($,X){return this.foreignKeyConfigs.map(({ref:Y,actions:z})=>{return x3((G,U)=>{let W=new qV(()=>{let Q=G();return{columns:[$],foreignColumns:[Q]}});if(U.onUpdate)W.onUpdate(U.onUpdate);if(U.onDelete)W.onDelete(U.onDelete);return W.build(X)},Y,z)})}buildExtraConfigColumn($){return new vA($,this.config)}}class i extends r${constructor($,X){if(!X.uniqueName)X.uniqueName=qA($,[X.name]);super($,X);this.table=$}static[A]="PgColumn"}class vA extends i{static[A]="ExtraConfigColumn";getSQLType(){return this.getSQLType()}indexConfig={order:this.config.order??"asc",nulls:this.config.nulls??"last",opClass:this.config.opClass};defaultConfig={order:"asc",nulls:"last",opClass:void 0};asc(){return this.indexConfig.order="asc",this}desc(){return this.indexConfig.order="desc",this}nullsFirst(){return this.indexConfig.nulls="first",this}nullsLast(){return this.indexConfig.nulls="last",this}op($){return this.indexConfig.opClass=$,this}}class V5{static[A]="IndexedColumn";constructor($,X,Y,z){this.name=$,this.keyAsName=X,this.type=Y,this.indexConfig=z}name;keyAsName;type;indexConfig}class CA extends X${static[A]="PgArrayBuilder";constructor($,X,Y){super($,"array","PgArray");this.config.baseBuilder=X,this.config.size=Y}build($){let X=this.config.baseBuilder.build($);return new RV($,this.config,X)}}class RV extends i{constructor($,X,Y,z){super($,X);this.baseColumn=Y,this.range=z,this.size=X.size}size;static[A]="PgArray";getSQLType(){return`${this.baseColumn.getSQLType()}[${typeof this.size==="number"?this.size:""}]`}mapFromDriverValue($){if(typeof $==="string")$=PA($);return $.map((X)=>this.baseColumn.mapFromDriverValue(X))}mapToDriverValue($,X=!1){let Y=$.map((z)=>z===null?null:b(this.baseColumn,RV)?this.baseColumn.mapToDriverValue(z,!0):this.baseColumn.mapToDriverValue(z));if(X)return Y;return TV(Y)}}class jA extends X${static[A]="PgEnumObjectColumnBuilder";constructor($,X){super($,"string","PgEnumObjectColumn");this.config.enum=X}build($){return new BA($,this.config)}}class BA extends i{static[A]="PgEnumObjectColumn";enum;enumValues=this.config.enum.enumValues;constructor($,X){super($,X);this.enum=X.enum}getSQLType(){return this.enum.enumName}}var S3=Symbol.for("drizzle:isPgEnum");function IA($){return!!$&&typeof $==="function"&&S3 in $&&$[S3]===!0}class xA extends X${static[A]="PgEnumColumnBuilder";constructor($,X){super($,"string","PgEnumColumn");this.config.enum=X}build($){return new SA($,this.config)}}class SA extends i{static[A]="PgEnumColumn";enum=this.config.enum;enumValues=this.config.enum.enumValues;constructor($,X){super($,X);this.enum=X.enum}getSQLType(){return this.enum.enumName}}function D5($,X){return Array.isArray(X)?qk($,[...X],void 0):Tk($,X,void 0)}function qk($,X,Y){let z=Object.assign((G)=>new xA(G??"",z),{enumName:$,enumValues:X,schema:Y,[S3]:!0});return z}function Tk($,X,Y){let z=Object.assign((G)=>new jA(G??"",z),{enumName:$,enumValues:Object.values(X),schema:Y,[S3]:!0});return z}class q6{static[A]="Subquery";constructor($,X,Y,z=!1,G=[]){this._={brand:"Subquery",sql:$,selectedFields:X,alias:Y,isWith:z,usedTables:G}}}class N5 extends q6{static[A]="WithSubquery"}var kA="0.44.3";var PV,vV,n$={startActiveSpan($,X){if(!PV)return X();if(!vV)vV=PV.trace.getTracer("drizzle-orm",kA);return x3((Y,z)=>z.startActiveSpan($,(G)=>{try{return X(G)}catch(U){throw G.setStatus({code:Y.SpanStatusCode.ERROR,message:U instanceof Error?U.message:"Unknown error"}),U}finally{G.end()}}),PV,vV)}};var $6=Symbol.for("drizzle:ViewBaseConfig");var SX=Symbol.for("drizzle:Schema"),k3=Symbol.for("drizzle:Columns"),bA=Symbol.for("drizzle:ExtraConfigColumns"),CV=Symbol.for("drizzle:OriginalName"),jV=Symbol.for("drizzle:BaseName"),E5=Symbol.for("drizzle:IsAlias"),fA=Symbol.for("drizzle:ExtraConfigBuilder"),Rk=Symbol.for("drizzle:IsDrizzleTable");class o{static[A]="Table";static Symbol={Name:c1,Schema:SX,OriginalName:CV,Columns:k3,ExtraConfigColumns:bA,BaseName:jV,IsAlias:E5,ExtraConfigBuilder:fA};[c1];[CV];[SX];[k3];[bA];[jV];[E5]=!1;[Rk]=!0;[fA]=void 0;constructor($,X,Y){this[c1]=this[CV]=$,this[SX]=X,this[jV]=Y}}function r6($){return $[c1]}function kX($){return`${$[SX]??"public"}.${$[c1]}`}function BV($){return $!==null&&$!==void 0&&typeof $.getSQL==="function"}function Pk($){let X={sql:"",params:[]};for(let Y of $)if(X.sql+=Y.sql,X.params.push(...Y.params),Y.typings?.length){if(!X.typings)X.typings=[];X.typings.push(...Y.typings)}return X}class y6{static[A]="StringChunk";value;constructor($){this.value=Array.isArray($)?$:[$]}getSQL(){return new e([this])}}class e{constructor($){this.queryChunks=$;for(let X of $)if(b(X,o)){let Y=X[o.Symbol.Schema];this.usedTables.push(Y===void 0?X[o.Symbol.Name]:Y+"."+X[o.Symbol.Name])}}static[A]="SQL";decoder=gA;shouldInlineParams=!1;usedTables=[];append($){return this.queryChunks.push(...$.queryChunks),this}toQuery($){return n$.startActiveSpan("drizzle.buildSQL",(X)=>{let Y=this.buildQueryFromSourceParams(this.queryChunks,$);return X?.setAttributes({"drizzle.query.text":Y.sql,"drizzle.query.params":JSON.stringify(Y.params)}),Y})}buildQueryFromSourceParams($,X){let Y=Object.assign({},X,{inlineParams:X.inlineParams||this.shouldInlineParams,paramStartIndex:X.paramStartIndex||{value:0}}),{casing:z,escapeName:G,escapeParam:U,prepareTyping:W,inlineParams:Q,paramStartIndex:Z}=Y;return Pk($.map((H)=>{if(b(H,y6))return{sql:H.value.join(""),params:[]};if(b(H,b3))return{sql:G(H.value),params:[]};if(H===void 0)return{sql:"",params:[]};if(Array.isArray(H)){let O=[new y6("(")];for(let[w,V]of H.entries())if(O.push(V),w<H.length-1)O.push(new y6(", "));return O.push(new y6(")")),this.buildQueryFromSourceParams(O,Y)}if(b(H,e))return this.buildQueryFromSourceParams(H.queryChunks,{...Y,inlineParams:Q||H.shouldInlineParams});if(b(H,o)){let O=H[o.Symbol.Schema],w=H[o.Symbol.Name];return{sql:O===void 0||H[E5]?G(w):G(O)+"."+G(w),params:[]}}if(b(H,r$)){let O=z.getColumnCasing(H);if(X.invokeSource==="indexes")return{sql:G(O),params:[]};let w=H.table[o.Symbol.Schema];return{sql:H.table[E5]||w===void 0?G(H.table[o.Symbol.Name])+"."+G(O):G(w)+"."+G(H.table[o.Symbol.Name])+"."+G(O),params:[]}}if(b(H,o4)){let O=H[$6].schema,w=H[$6].name;return{sql:O===void 0||H[$6].isAlias?G(w):G(O)+"."+G(w),params:[]}}if(b(H,F1)){if(b(H.value,I8))return{sql:U(Z.value++,H),params:[H],typings:["none"]};let O=H.value===null?null:H.encoder.mapToDriverValue(H.value);if(b(O,e))return this.buildQueryFromSourceParams([O],Y);if(Q)return{sql:this.mapInlineParam(O,Y),params:[]};let w=["none"];if(W)w=[W(H.encoder)];return{sql:U(Z.value++,O),params:[O],typings:w}}if(b(H,I8))return{sql:U(Z.value++,H),params:[H],typings:["none"]};if(b(H,e.Aliased)&&H.fieldAlias!==void 0)return{sql:G(H.fieldAlias),params:[]};if(b(H,q6)){if(H._.isWith)return{sql:G(H._.alias),params:[]};return this.buildQueryFromSourceParams([new y6("("),H._.sql,new y6(") "),new b3(H._.alias)],Y)}if(IA(H)){if(H.schema)return{sql:G(H.schema)+"."+G(H.enumName),params:[]};return{sql:G(H.enumName),params:[]}}if(BV(H)){if(H.shouldOmitSQLParens?.())return this.buildQueryFromSourceParams([H.getSQL()],Y);return this.buildQueryFromSourceParams([new y6("("),H.getSQL(),new y6(")")],Y)}if(Q)return{sql:this.mapInlineParam(H,Y),params:[]};return{sql:U(Z.value++,H),params:[H],typings:["none"]}}))}mapInlineParam($,{escapeString:X}){if($===null)return"null";if(typeof $==="number"||typeof $==="boolean")return $.toString();if(typeof $==="string")return X($);if(typeof $==="object"){let Y=$.toString();if(Y==="[object Object]")return X(JSON.stringify($));return X(Y)}throw new Error("Unexpected param value: "+$)}getSQL(){return this}as($){if($===void 0)return this;return new e.Aliased(this,$)}mapWith($){return this.decoder=typeof $==="function"?{mapFromDriverValue:$}:$,this}inlineParams(){return this.shouldInlineParams=!0,this}if($){return $?this:void 0}}class b3{constructor($){this.value=$}static[A]="Name";brand;getSQL(){return new e([this])}}function hA($){return typeof $==="object"&&$!==null&&"mapToDriverValue"in $&&typeof $.mapToDriverValue==="function"}var gA={mapFromDriverValue:($)=>$},yA={mapToDriverValue:($)=>$},Da={...gA,...yA};class F1{constructor($,X=yA){this.value=$,this.encoder=X}static[A]="Param";brand;getSQL(){return new e([this])}}function T($,...X){let Y=[];if(X.length>0||$.length>0&&$[0]!=="")Y.push(new y6($[0]));for(let[z,G]of X.entries())Y.push(G,new y6($[z+1]));return new e(Y)}(($)=>{function X(){return new e([])}$.empty=X;function Y(Z){return new e(Z)}$.fromList=Y;function z(Z){return new e([new y6(Z)])}$.raw=z;function G(Z,H){let O=[];for(let[w,V]of Z.entries()){if(w>0&&H!==void 0)O.push(H);O.push(V)}return new e(O)}$.join=G;function U(Z){return new b3(Z)}$.identifier=U;function W(Z){return new I8(Z)}$.placeholder=W;function Q(Z,H){return new F1(Z,H)}$.param=Q})(T||(T={}));(($)=>{class X{constructor(Y,z){this.sql=Y,this.fieldAlias=z}static[A]="SQL.Aliased";isSelectionField=!1;getSQL(){return this.sql}clone(){return new X(this.sql,this.fieldAlias)}}$.Aliased=X})(e||(e={}));class I8{constructor($){this.name=$}static[A]="Placeholder";getSQL(){return new e([this])}}function IV($,X){return $.map((Y)=>{if(b(Y,I8)){if(!(Y.name in X))throw new Error(`No value for placeholder "${Y.name}" was provided`);return X[Y.name]}if(b(Y,F1)&&b(Y.value,I8)){if(!(Y.value.name in X))throw new Error(`No value for placeholder "${Y.value.name}" was provided`);return Y.encoder.mapToDriverValue(X[Y.value.name])}return Y})}var vk=Symbol.for("drizzle:IsDrizzleView");class o4{static[A]="View";[$6];[vk]=!0;constructor({name:$,schema:X,selectedFields:Y,query:z}){this[$6]={name:$,originalName:$,schema:X,selectedFields:Y,query:z,isExisting:!z,isAlias:!1}}getSQL(){return new e([this])}}r$.prototype.getSQL=function(){return new e([this])};o.prototype.getSQL=function(){return new e([this])};q6.prototype.getSQL=function(){return new e([this])};class Q2{constructor($){this.table=$}static[A]="ColumnAliasProxyHandler";get($,X){if(X==="table")return this.table;return $[X]}}class F5{constructor($,X){this.alias=$,this.replaceOriginalName=X}static[A]="TableAliasProxyHandler";get($,X){if(X===o.Symbol.IsAlias)return!0;if(X===o.Symbol.Name)return this.alias;if(this.replaceOriginalName&&X===o.Symbol.OriginalName)return this.alias;if(X===$6)return{...$[$6],name:this.alias,isAlias:!0};if(X===o.Symbol.Columns){let z=$[o.Symbol.Columns];if(!z)return z;let G={};return Object.keys(z).map((U)=>{G[U]=new Proxy(z[U],new Q2(new Proxy($,this)))}),G}let Y=$[X];if(b(Y,r$))return new Proxy(Y,new Q2(new Proxy($,this)));return Y}}function f3($,X){return new Proxy($,new F5(X,!1))}function D0($,X){return new Proxy($,new Q2(new Proxy($.table,new F5(X,!1))))}function xV($,X){return new e.Aliased(M5($.sql,X),$.fieldAlias)}function M5($,X){return T.join($.queryChunks.map((Y)=>{if(b(Y,r$))return D0(Y,X);if(b(Y,e))return M5(Y,X);if(b(Y,e.Aliased))return xV(Y,X);return Y}))}class h3 extends Error{static[A]="DrizzleError";constructor({message:$,cause:X}){super($);this.name="DrizzleError",this.cause=X}}class SV extends h3{static[A]="TransactionRollbackError";constructor(){super({message:"Rollback"})}}class mA{static[A]="ConsoleLogWriter";write($){console.log($)}}class kV{static[A]="DefaultLogger";writer;constructor($){this.writer=$?.writer??new mA}logQuery($,X){let Y=X.map((G)=>{try{return JSON.stringify(G)}catch{return String(G)}}),z=Y.length?` -- params: [${Y.join(", ")}]`:"";this.writer.write(`Query: ${$}${z}`)}}class bV{static[A]="NoopLogger";logQuery(){}}class k4{static[A]="QueryPromise";[Symbol.toStringTag]="QueryPromise";catch($){return this.then(void 0,$)}finally($){return this.then((X)=>{return $?.(),X},(X)=>{throw $?.(),X})}then($,X){return this.execute().then($,X)}}function uA($,X,Y){let z={},G=$.reduce((U,{path:W,field:Q},Z)=>{let H;if(b(Q,r$))H=Q;else if(b(Q,e))H=Q.decoder;else H=Q.sql.decoder;let O=U;for(let[w,V]of W.entries())if(w<W.length-1){if(!(V in O))O[V]={};O=O[V]}else{let D=X[Z],N=O[V]=D===null?null:H.mapFromDriverValue(D);if(Y&&b(Q,r$)&&W.length===2){let F=W[0];if(!(F in z))z[F]=N===null?r6(Q.table):!1;else if(typeof z[F]==="string"&&z[F]!==r6(Q.table))z[F]=!1}}return U},{});if(Y&&Object.keys(z).length>0){for(let[U,W]of Object.entries(z))if(typeof W==="string"&&!Y[W])G[U]=null}return G}function P1($,X){return Object.entries($).reduce((Y,[z,G])=>{if(typeof z!=="string")return Y;let U=X?[...X,z]:[z];if(b(G,r$)||b(G,e)||b(G,e.Aliased))Y.push({path:U,field:G});else if(b(G,o))Y.push(...P1(G[o.Symbol.Columns],U));else Y.push(...P1(G,U));return Y},[])}function L5($,X){let Y=Object.keys($),z=Object.keys(X);if(Y.length!==z.length)return!1;for(let[G,U]of Y.entries())if(U!==z[G])return!1;return!0}function g3($,X){let Y=Object.entries(X).filter(([,z])=>z!==void 0).map(([z,G])=>{if(b(G,e)||b(G,r$))return[z,G];else return[z,new F1(G,$[o.Symbol.Columns][z])]});if(Y.length===0)throw new Error("No values to set");return Object.fromEntries(Y)}function cA($,X){for(let Y of X)for(let z of Object.getOwnPropertyNames(Y.prototype)){if(z==="constructor")continue;Object.defineProperty($.prototype,z,Object.getOwnPropertyDescriptor(Y.prototype,z)||Object.create(null))}}function pA($){return $[o.Symbol.Columns]}function i0($){return b($,q6)?$._.alias:b($,o4)?$[$6].name:b($,e)?void 0:$[o.Symbol.IsAlias]?$[o.Symbol.Name]:$[o.Symbol.BaseName]}function I$($,X){return{name:typeof $==="string"&&$.length>0?$:"",config:typeof $==="object"?$:X}}function dA($){if(typeof $!=="object"||$===null)return!1;if($.constructor.name!=="Object")return!1;if("logger"in $){let X=typeof $.logger;if(X!=="boolean"&&(X!=="object"||typeof $.logger.logQuery!=="function")&&X!=="undefined")return!1;return!0}if("schema"in $){let X=typeof $.schema;if(X!=="object"&&X!=="undefined")return!1;return!0}if("casing"in $){let X=typeof $.casing;if(X!=="string"&&X!=="undefined")return!1;return!0}if("mode"in $){if($.mode!=="default"||$.mode!=="planetscale"||$.mode!==void 0)return!1;return!0}if("connection"in $){let X=typeof $.connection;if(X!=="string"&&X!=="object"&&X!=="undefined")return!1;return!0}if("client"in $){let X=typeof $.client;if(X!=="object"&&X!=="function"&&X!=="undefined")return!1;return!0}if(Object.keys($).length===0)return!0;return!1}class x8 extends X${static[A]="PgIntColumnBaseBuilder";generatedAlwaysAsIdentity($){if($){let{name:X,...Y}=$;this.config.generatedIdentity={type:"always",sequenceName:X,sequenceOptions:Y}}else this.config.generatedIdentity={type:"always"};return this.config.hasDefault=!0,this.config.notNull=!0,this}generatedByDefaultAsIdentity($){if($){let{name:X,...Y}=$;this.config.generatedIdentity={type:"byDefault",sequenceName:X,sequenceOptions:Y}}else this.config.generatedIdentity={type:"byDefault"};return this.config.hasDefault=!0,this.config.notNull=!0,this}}class lA extends x8{static[A]="PgBigInt53Builder";constructor($){super($,"number","PgBigInt53")}build($){return new iA($,this.config)}}class iA extends i{static[A]="PgBigInt53";getSQLType(){return"bigint"}mapFromDriverValue($){if(typeof $==="number")return $;return Number($)}}class rA extends x8{static[A]="PgBigInt64Builder";constructor($){super($,"bigint","PgBigInt64")}build($){return new nA($,this.config)}}class nA extends i{static[A]="PgBigInt64";getSQLType(){return"bigint"}mapFromDriverValue($){return BigInt($)}}function oA($,X){let{name:Y,config:z}=I$($,X);if(z.mode==="number")return new lA(Y);return new rA(Y)}class tA extends X${static[A]="PgBigSerial53Builder";constructor($){super($,"number","PgBigSerial53");this.config.hasDefault=!0,this.config.notNull=!0}build($){return new aA($,this.config)}}class aA extends i{static[A]="PgBigSerial53";getSQLType(){return"bigserial"}mapFromDriverValue($){if(typeof $==="number")return $;return Number($)}}class sA extends X${static[A]="PgBigSerial64Builder";constructor($){super($,"bigint","PgBigSerial64");this.config.hasDefault=!0}build($){return new eA($,this.config)}}class eA extends i{static[A]="PgBigSerial64";getSQLType(){return"bigserial"}mapFromDriverValue($){return BigInt($)}}function $K($,X){let{name:Y,config:z}=I$($,X);if(z.mode==="number")return new tA(Y);return new sA(Y)}class XK extends X${static[A]="PgBooleanBuilder";constructor($){super($,"boolean","PgBoolean")}build($){return new YK($,this.config)}}class YK extends i{static[A]="PgBoolean";getSQLType(){return"boolean"}}function J5($){return new XK($??"")}class GK extends X${static[A]="PgCharBuilder";constructor($,X){super($,"string","PgChar");this.config.length=X.length,this.config.enumValues=X.enum}build($){return new zK($,this.config)}}class zK extends i{static[A]="PgChar";length=this.config.length;enumValues=this.config.enumValues;getSQLType(){return this.length===void 0?"char":`char(${this.length})`}}function UK($,X={}){let{name:Y,config:z}=I$($,X);return new GK(Y,z)}class WK extends X${static[A]="PgCidrBuilder";constructor($){super($,"string","PgCidr")}build($){return new QK($,this.config)}}class QK extends i{static[A]="PgCidr";getSQLType(){return"cidr"}}function ZK($){return new WK($??"")}class HK extends X${static[A]="PgCustomColumnBuilder";constructor($,X,Y){super($,"custom","PgCustomColumn");this.config.fieldConfig=X,this.config.customTypeParams=Y}build($){return new OK($,this.config)}}class OK extends i{static[A]="PgCustomColumn";sqlName;mapTo;mapFrom;constructor($,X){super($,X);this.sqlName=X.customTypeParams.dataType(X.fieldConfig),this.mapTo=X.customTypeParams.toDriver,this.mapFrom=X.customTypeParams.fromDriver}getSQLType(){return this.sqlName}mapFromDriverValue($){return typeof this.mapFrom==="function"?this.mapFrom($):$}mapToDriverValue($){return typeof this.mapTo==="function"?this.mapTo($):$}}function wK($){return(X,Y)=>{let{name:z,config:G}=I$(X,Y);return new HK(z,G,$)}}class r0 extends X${static[A]="PgDateColumnBaseBuilder";defaultNow(){return this.default(T`now()`)}}class VK extends r0{static[A]="PgDateBuilder";constructor($){super($,"date","PgDate")}build($){return new y3($,this.config)}}class y3 extends i{static[A]="PgDate";getSQLType(){return"date"}mapFromDriverValue($){return new Date($)}mapToDriverValue($){return $.toISOString()}}class DK extends r0{static[A]="PgDateStringBuilder";constructor($){super($,"string","PgDateString")}build($){return new m3($,this.config)}}class m3 extends i{static[A]="PgDateString";getSQLType(){return"date"}}function NK($,X){let{name:Y,config:z}=I$($,X);if(z?.mode==="date")return new VK(Y);return new DK(Y)}class EK extends X${static[A]="PgDoublePrecisionBuilder";constructor($){super($,"number","PgDoublePrecision")}build($){return new FK($,this.config)}}class FK extends i{static[A]="PgDoublePrecision";getSQLType(){return"double precision"}mapFromDriverValue($){if(typeof $==="string")return Number.parseFloat($);return $}}function MK($){return new EK($??"")}class LK extends X${static[A]="PgInetBuilder";constructor($){super($,"string","PgInet")}build($){return new JK($,this.config)}}class JK extends i{static[A]="PgInet";getSQLType(){return"inet"}}function AK($){return new LK($??"")}class KK extends x8{static[A]="PgIntegerBuilder";constructor($){super($,"number","PgInteger")}build($){return new _K($,this.config)}}class _K extends i{static[A]="PgInteger";getSQLType(){return"integer"}mapFromDriverValue($){if(typeof $==="string")return Number.parseInt($);return $}}function A5($){return new KK($??"")}class qK extends X${static[A]="PgIntervalBuilder";constructor($,X){super($,"string","PgInterval");this.config.intervalConfig=X}build($){return new TK($,this.config)}}class TK extends i{static[A]="PgInterval";fields=this.config.intervalConfig.fields;precision=this.config.intervalConfig.precision;getSQLType(){let $=this.fields?` ${this.fields}`:"",X=this.precision?`(${this.precision})`:"";return`interval${$}${X}`}}function RK($,X={}){let{name:Y,config:z}=I$($,X);return new qK(Y,z)}class PK extends X${static[A]="PgJsonBuilder";constructor($){super($,"json","PgJson")}build($){return new u3($,this.config)}}class u3 extends i{static[A]="PgJson";constructor($,X){super($,X)}getSQLType(){return"json"}mapToDriverValue($){return JSON.stringify($)}mapFromDriverValue($){if(typeof $==="string")try{return JSON.parse($)}catch{return $}return $}}function vK($){return new PK($??"")}class CK extends X${static[A]="PgJsonbBuilder";constructor($){super($,"json","PgJsonb")}build($){return new c3($,this.config)}}class c3 extends i{static[A]="PgJsonb";constructor($,X){super($,X)}getSQLType(){return"jsonb"}mapToDriverValue($){return JSON.stringify($)}mapFromDriverValue($){if(typeof $==="string")try{return JSON.parse($)}catch{return $}return $}}function jK($){return new CK($??"")}class BK extends X${static[A]="PgLineBuilder";constructor($){super($,"array","PgLine")}build($){return new IK($,this.config)}}class IK extends i{static[A]="PgLine";getSQLType(){return"line"}mapFromDriverValue($){let[X,Y,z]=$.slice(1,-1).split(",");return[Number.parseFloat(X),Number.parseFloat(Y),Number.parseFloat(z)]}mapToDriverValue($){return`{${$[0]},${$[1]},${$[2]}}`}}class xK extends X${static[A]="PgLineABCBuilder";constructor($){super($,"json","PgLineABC")}build($){return new SK($,this.config)}}class SK extends i{static[A]="PgLineABC";getSQLType(){return"line"}mapFromDriverValue($){let[X,Y,z]=$.slice(1,-1).split(",");return{a:Number.parseFloat(X),b:Number.parseFloat(Y),c:Number.parseFloat(z)}}mapToDriverValue($){return`{${$.a},${$.b},${$.c}}`}}function kK($,X){let{name:Y,config:z}=I$($,X);if(!z?.mode||z.mode==="tuple")return new BK(Y);return new xK(Y)}class bK extends X${static[A]="PgMacaddrBuilder";constructor($){super($,"string","PgMacaddr")}build($){return new fK($,this.config)}}class fK extends i{static[A]="PgMacaddr";getSQLType(){return"macaddr"}}function hK($){return new bK($??"")}class gK extends X${static[A]="PgMacaddr8Builder";constructor($){super($,"string","PgMacaddr8")}build($){return new yK($,this.config)}}class yK extends i{static[A]="PgMacaddr8";getSQLType(){return"macaddr8"}}function mK($){return new gK($??"")}class uK extends X${static[A]="PgNumericBuilder";constructor($,X,Y){super($,"string","PgNumeric");this.config.precision=X,this.config.scale=Y}build($){return new p3($,this.config)}}class p3 extends i{static[A]="PgNumeric";precision;scale;constructor($,X){super($,X);this.precision=X.precision,this.scale=X.scale}mapFromDriverValue($){if(typeof $==="string")return $;return String($)}getSQLType(){if(this.precision!==void 0&&this.scale!==void 0)return`numeric(${this.precision}, ${this.scale})`;else if(this.precision===void 0)return"numeric";else return`numeric(${this.precision})`}}class cK extends X${static[A]="PgNumericNumberBuilder";constructor($,X,Y){super($,"number","PgNumericNumber");this.config.precision=X,this.config.scale=Y}build($){return new pK($,this.config)}}class pK extends i{static[A]="PgNumericNumber";precision;scale;constructor($,X){super($,X);this.precision=X.precision,this.scale=X.scale}mapFromDriverValue($){if(typeof $==="number")return $;return Number($)}mapToDriverValue=String;getSQLType(){if(this.precision!==void 0&&this.scale!==void 0)return`numeric(${this.precision}, ${this.scale})`;else if(this.precision===void 0)return"numeric";else return`numeric(${this.precision})`}}class dK extends X${static[A]="PgNumericBigIntBuilder";constructor($,X,Y){super($,"bigint","PgNumericBigInt");this.config.precision=X,this.config.scale=Y}build($){return new lK($,this.config)}}class lK extends i{static[A]="PgNumericBigInt";precision;scale;constructor($,X){super($,X);this.precision=X.precision,this.scale=X.scale}mapFromDriverValue=BigInt;mapToDriverValue=String;getSQLType(){if(this.precision!==void 0&&this.scale!==void 0)return`numeric(${this.precision}, ${this.scale})`;else if(this.precision===void 0)return"numeric";else return`numeric(${this.precision})`}}function iK($,X){let{name:Y,config:z}=I$($,X),G=z?.mode;return G==="number"?new cK(Y,z?.precision,z?.scale):G==="bigint"?new dK(Y,z?.precision,z?.scale):new uK(Y,z?.precision,z?.scale)}class rK extends X${static[A]="PgPointTupleBuilder";constructor($){super($,"array","PgPointTuple")}build($){return new nK($,this.config)}}class nK extends i{static[A]="PgPointTuple";getSQLType(){return"point"}mapFromDriverValue($){if(typeof $==="string"){let[X,Y]=$.slice(1,-1).split(",");return[Number.parseFloat(X),Number.parseFloat(Y)]}return[$.x,$.y]}mapToDriverValue($){return`(${$[0]},${$[1]})`}}class oK extends X${static[A]="PgPointObjectBuilder";constructor($){super($,"json","PgPointObject")}build($){return new tK($,this.config)}}class tK extends i{static[A]="PgPointObject";getSQLType(){return"point"}mapFromDriverValue($){if(typeof $==="string"){let[X,Y]=$.slice(1,-1).split(",");return{x:Number.parseFloat(X),y:Number.parseFloat(Y)}}return $}mapToDriverValue($){return`(${$.x},${$.y})`}}function aK($,X){let{name:Y,config:z}=I$($,X);if(!z?.mode||z.mode==="tuple")return new rK(Y);return new oK(Y)}function Ck($){let X=[];for(let Y=0;Y<$.length;Y+=2)X.push(Number.parseInt($.slice(Y,Y+2),16));return new Uint8Array(X)}function sK($,X){let Y=new ArrayBuffer(8),z=new DataView(Y);for(let G=0;G<8;G++)z.setUint8(G,$[X+G]);return z.getFloat64(0,!0)}function fV($){let X=Ck($),Y=0,z=X[Y];Y+=1;let G=new DataView(X.buffer),U=G.getUint32(Y,z===1);Y+=4;let W;if(U&536870912)W=G.getUint32(Y,z===1),Y+=4;if((U&65535)===1){let Q=sK(X,Y);Y+=8;let Z=sK(X,Y);return Y+=8,[Q,Z]}throw new Error("Unsupported geometry type")}class eK extends X${static[A]="PgGeometryBuilder";constructor($){super($,"array","PgGeometry")}build($){return new $_($,this.config)}}class $_ extends i{static[A]="PgGeometry";getSQLType(){return"geometry(point)"}mapFromDriverValue($){return fV($)}mapToDriverValue($){return`point(${$[0]} ${$[1]})`}}class X_ extends X${static[A]="PgGeometryObjectBuilder";constructor($){super($,"json","PgGeometryObject")}build($){return new Y_($,this.config)}}class Y_ extends i{static[A]="PgGeometryObject";getSQLType(){return"geometry(point)"}mapFromDriverValue($){let X=fV($);return{x:X[0],y:X[1]}}mapToDriverValue($){return`point(${$.x} ${$.y})`}}function G_($,X){let{name:Y,config:z}=I$($,X);if(!z?.mode||z.mode==="tuple")return new eK(Y);return new X_(Y)}class z_ extends X${static[A]="PgRealBuilder";constructor($,X){super($,"number","PgReal");this.config.length=X}build($){return new U_($,this.config)}}class U_ extends i{static[A]="PgReal";constructor($,X){super($,X)}getSQLType(){return"real"}mapFromDriverValue=($)=>{if(typeof $==="string")return Number.parseFloat($);return $}}function W_($){return new z_($??"")}class Q_ extends X${static[A]="PgSerialBuilder";constructor($){super($,"number","PgSerial");this.config.hasDefault=!0,this.config.notNull=!0}build($){return new Z_($,this.config)}}class Z_ extends i{static[A]="PgSerial";getSQLType(){return"serial"}}function H_($){return new Q_($??"")}class O_ extends x8{static[A]="PgSmallIntBuilder";constructor($){super($,"number","PgSmallInt")}build($){return new w_($,this.config)}}class w_ extends i{static[A]="PgSmallInt";getSQLType(){return"smallint"}mapFromDriverValue=($)=>{if(typeof $==="string")return Number($);return $}}function V_($){return new O_($??"")}class D_ extends X${static[A]="PgSmallSerialBuilder";constructor($){super($,"number","PgSmallSerial");this.config.hasDefault=!0,this.config.notNull=!0}build($){return new N_($,this.config)}}class N_ extends i{static[A]="PgSmallSerial";getSQLType(){return"smallserial"}}function E_($){return new D_($??"")}class F_ extends X${static[A]="PgTextBuilder";constructor($,X){super($,"string","PgText");this.config.enumValues=X.enum}build($){return new M_($,this.config)}}class M_ extends i{static[A]="PgText";enumValues=this.config.enumValues;getSQLType(){return"text"}}function L_($,X={}){let{name:Y,config:z}=I$($,X);return new F_(Y,z)}class J_ extends r0{constructor($,X,Y){super($,"string","PgTime");this.withTimezone=X,this.precision=Y,this.config.withTimezone=X,this.config.precision=Y}static[A]="PgTimeBuilder";build($){return new d3($,this.config)}}class d3 extends i{static[A]="PgTime";withTimezone;precision;constructor($,X){super($,X);this.withTimezone=X.withTimezone,this.precision=X.precision}getSQLType(){return`time${this.precision===void 0?"":`(${this.precision})`}${this.withTimezone?" with time zone":""}`}}function A_($,X={}){let{name:Y,config:z}=I$($,X);return new J_(Y,z.withTimezone??!1,z.precision)}class K_ extends r0{static[A]="PgTimestampBuilder";constructor($,X,Y){super($,"date","PgTimestamp");this.config.withTimezone=X,this.config.precision=Y}build($){return new l3($,this.config)}}class l3 extends i{static[A]="PgTimestamp";withTimezone;precision;constructor($,X){super($,X);this.withTimezone=X.withTimezone,this.precision=X.precision}getSQLType(){return`timestamp${this.precision===void 0?"":` (${this.precision})`}${this.withTimezone?" with time zone":""}`}mapFromDriverValue=($)=>{return new Date(this.withTimezone?$:$+"+0000")};mapToDriverValue=($)=>{return $.toISOString()}}class __ extends r0{static[A]="PgTimestampStringBuilder";constructor($,X,Y){super($,"string","PgTimestampString");this.config.withTimezone=X,this.config.precision=Y}build($){return new i3($,this.config)}}class i3 extends i{static[A]="PgTimestampString";withTimezone;precision;constructor($,X){super($,X);this.withTimezone=X.withTimezone,this.precision=X.precision}getSQLType(){return`timestamp${this.precision===void 0?"":`(${this.precision})`}${this.withTimezone?" with time zone":""}`}}function q_($,X={}){let{name:Y,config:z}=I$($,X);if(z?.mode==="string")return new __(Y,z.withTimezone??!1,z.precision);return new K_(Y,z?.withTimezone??!1,z?.precision)}class T_ extends X${static[A]="PgUUIDBuilder";constructor($){super($,"string","PgUUID")}defaultRandom(){return this.default(T`gen_random_uuid()`)}build($){return new r3($,this.config)}}class r3 extends i{static[A]="PgUUID";getSQLType(){return"uuid"}}function v1($){return new T_($??"")}class R_ extends X${static[A]="PgVarcharBuilder";constructor($,X){super($,"string","PgVarchar");this.config.length=X.length,this.config.enumValues=X.enum}build($){return new P_($,this.config)}}class P_ extends i{static[A]="PgVarchar";length=this.config.length;enumValues=this.config.enumValues;getSQLType(){return this.length===void 0?"varchar":`varchar(${this.length})`}}function O4($,X={}){let{name:Y,config:z}=I$($,X);return new R_(Y,z)}class v_ extends X${static[A]="PgBinaryVectorBuilder";constructor($,X){super($,"string","PgBinaryVector");this.config.dimensions=X.dimensions}build($){return new C_($,this.config)}}class C_ extends i{static[A]="PgBinaryVector";dimensions=this.config.dimensions;getSQLType(){return`bit(${this.dimensions})`}}function j_($,X){let{name:Y,config:z}=I$($,X);return new v_(Y,z)}class B_ extends X${static[A]="PgHalfVectorBuilder";constructor($,X){super($,"array","PgHalfVector");this.config.dimensions=X.dimensions}build($){return new I_($,this.config)}}class I_ extends i{static[A]="PgHalfVector";dimensions=this.config.dimensions;getSQLType(){return`halfvec(${this.dimensions})`}mapToDriverValue($){return JSON.stringify($)}mapFromDriverValue($){return $.slice(1,-1).split(",").map((X)=>Number.parseFloat(X))}}function x_($,X){let{name:Y,config:z}=I$($,X);return new B_(Y,z)}class S_ extends X${static[A]="PgSparseVectorBuilder";constructor($,X){super($,"string","PgSparseVector");this.config.dimensions=X.dimensions}build($){return new k_($,this.config)}}class k_ extends i{static[A]="PgSparseVector";dimensions=this.config.dimensions;getSQLType(){return`sparsevec(${this.dimensions})`}}function b_($,X){let{name:Y,config:z}=I$($,X);return new S_(Y,z)}class f_ extends X${static[A]="PgVectorBuilder";constructor($,X){super($,"array","PgVector");this.config.dimensions=X.dimensions}build($){return new h_($,this.config)}}class h_ extends i{static[A]="PgVector";dimensions=this.config.dimensions;getSQLType(){return`vector(${this.dimensions})`}mapToDriverValue($){return JSON.stringify($)}mapFromDriverValue($){return $.slice(1,-1).split(",").map((X)=>Number.parseFloat(X))}}function g_($,X){let{name:Y,config:z}=I$($,X);return new f_(Y,z)}function y_(){return{bigint:oA,bigserial:$K,boolean:J5,char:UK,cidr:ZK,customType:wK,date:NK,doublePrecision:MK,inet:AK,integer:A5,interval:RK,json:vK,jsonb:jK,line:kK,macaddr:hK,macaddr8:mK,numeric:iK,point:aK,geometry:G_,real:W_,serial:H_,smallint:V_,smallserial:E_,text:L_,time:A_,timestamp:q_,uuid:v1,varchar:O4,bit:j_,halfvec:x_,sparsevec:b_,vector:g_}}var hV=Symbol.for("drizzle:PgInlineForeignKeys"),m_=Symbol.for("drizzle:EnableRLS");class m6 extends o{static[A]="PgTable";static Symbol=Object.assign({},o.Symbol,{InlineForeignKeys:hV,EnableRLS:m_});[hV]=[];[m_]=!1;[o.Symbol.ExtraConfigBuilder]=void 0;[o.Symbol.ExtraConfigColumns]={}}function jk($,X,Y,z,G=$){let U=new m6($,z,G),W=typeof X==="function"?X(y_()):X,Q=Object.fromEntries(Object.entries(W).map(([O,w])=>{let V=w;V.setName(O);let D=V.build(U);return U[hV].push(...V.buildForeignKeys(D,U)),[O,D]})),Z=Object.fromEntries(Object.entries(W).map(([O,w])=>{let V=w;V.setName(O);let D=V.buildExtraConfigColumn(U);return[O,D]})),H=Object.assign(U,Q);if(H[o.Symbol.Columns]=Q,H[o.Symbol.ExtraConfigColumns]=Z,Y)H[m6.Symbol.ExtraConfigBuilder]=Y;return Object.assign(H,{enableRLS:()=>{return H[m6.Symbol.EnableRLS]=!0,H}})}var S8=($,X,Y)=>{return jk($,X,Y,void 0)};function u_(...$){if($[0].columns)return new K5($[0].columns,$[0].name);return new K5($)}class K5{static[A]="PgPrimaryKeyBuilder";columns;name;constructor($,X){this.columns=$,this.name=X}build($){return new c_($,this.columns,this.name)}}class c_{constructor($,X,Y){this.table=$,this.columns=X,this.name=Y}static[A]="PgPrimaryKey";columns;name;getName(){return this.name??`${this.table[m6.Symbol.Name]}_${this.columns.map(($)=>$.name).join("_")}_pk`}}function t4($,X){if(hA(X)&&!BV($)&&!b($,F1)&&!b($,I8)&&!b($,r$)&&!b($,o)&&!b($,o4))return new F1($,X);return $}var n3=($,X)=>{return T`${$} = ${t4(X,$)}`},p_=($,X)=>{return T`${$} <> ${t4(X,$)}`};function _5(...$){let X=$.filter((Y)=>Y!==void 0);if(X.length===0)return;if(X.length===1)return new e(X);return new e([new y6("("),T.join(X,new y6(" and ")),new y6(")")])}function d_(...$){let X=$.filter((Y)=>Y!==void 0);if(X.length===0)return;if(X.length===1)return new e(X);return new e([new y6("("),T.join(X,new y6(" or ")),new y6(")")])}function l_($){return T`not ${$}`}var o3=($,X)=>{return T`${$} > ${t4(X,$)}`},i_=($,X)=>{return T`${$} >= ${t4(X,$)}`},r_=($,X)=>{return T`${$} < ${t4(X,$)}`},n_=($,X)=>{return T`${$} <= ${t4(X,$)}`};function o_($,X){if(Array.isArray(X)){if(X.length===0)return T`false`;return T`${$} in ${X.map((Y)=>t4(Y,$))}`}return T`${$} in ${t4(X,$)}`}function t_($,X){if(Array.isArray(X)){if(X.length===0)return T`true`;return T`${$} not in ${X.map((Y)=>t4(Y,$))}`}return T`${$} not in ${t4(X,$)}`}function a_($){return T`${$} is null`}function s_($){return T`${$} is not null`}function e_($){return T`exists ${$}`}function $q($){return T`not exists ${$}`}function Xq($,X,Y){return T`${$} between ${t4(X,$)} and ${t4(Y,$)}`}function Yq($,X,Y){return T`${$} not between ${t4(X,$)} and ${t4(Y,$)}`}function Gq($,X){return T`${$} like ${X}`}function zq($,X){return T`${$} not like ${X}`}function Uq($,X){return T`${$} ilike ${X}`}function Wq($,X){return T`${$} not ilike ${X}`}function Qq($){return T`${$} asc`}function Zq($){return T`${$} desc`}class gV{constructor($,X,Y){this.sourceTable=$,this.referencedTable=X,this.relationName=Y,this.referencedTableName=X[o.Symbol.Name]}static[A]="Relation";referencedTableName;fieldName}class Hq{constructor($,X){this.table=$,this.config=X}static[A]="Relations"}class k8 extends gV{constructor($,X,Y,z){super($,X,Y?.relationName);this.config=Y,this.isNullable=z}static[A]="One";withFieldName($){let X=new k8(this.sourceTable,this.referencedTable,this.config,this.isNullable);return X.fieldName=$,X}}class q5 extends gV{constructor($,X,Y){super($,X,Y?.relationName);this.config=Y}static[A]="Many";withFieldName($){let X=new q5(this.sourceTable,this.referencedTable,this.config);return X.fieldName=$,X}}function Oq(){return{and:_5,between:Xq,eq:n3,exists:e_,gt:o3,gte:i_,ilike:Uq,inArray:o_,isNull:a_,isNotNull:s_,like:Gq,lt:r_,lte:n_,ne:p_,not:l_,notBetween:Yq,notExists:$q,notLike:zq,notIlike:Wq,notInArray:t_,or:d_,sql:T}}function wq(){return{sql:T,asc:Qq,desc:Zq}}function Vq($,X){if(Object.keys($).length===1&&"default"in $&&!b($.default,o))$=$.default;let Y={},z={},G={};for(let[U,W]of Object.entries($))if(b(W,o)){let Q=kX(W),Z=z[Q];Y[Q]=U,G[U]={tsName:U,dbName:W[o.Symbol.Name],schema:W[o.Symbol.Schema],columns:W[o.Symbol.Columns],relations:Z?.relations??{},primaryKey:Z?.primaryKey??[]};for(let O of Object.values(W[o.Symbol.Columns]))if(O.primary)G[U].primaryKey.push(O);let H=W[o.Symbol.ExtraConfigBuilder]?.(W[o.Symbol.ExtraConfigColumns]);if(H){for(let O of Object.values(H))if(b(O,K5))G[U].primaryKey.push(...O.columns)}}else if(b(W,Hq)){let Q=kX(W.table),Z=Y[Q],H=W.config(X(W.table)),O;for(let[w,V]of Object.entries(H))if(Z){let D=G[Z];if(D.relations[w]=V,O)D.primaryKey.push(...O)}else{if(!(Q in z))z[Q]={relations:{},primaryKey:O};z[Q].relations[w]=V}}return{tables:G,tableNamesMap:Y}}function Bk($){return function X(Y,z){return new k8($,Y,z,z?.fields.reduce((G,U)=>G&&U.notNull,!0)??!1)}}function Ik($){return function X(Y,z){return new q5($,Y,z)}}function Dq($,X,Y){if(b(Y,k8)&&Y.config)return{fields:Y.config.fields,references:Y.config.references};let z=X[kX(Y.referencedTable)];if(!z)throw new Error(`Table "${Y.referencedTable[o.Symbol.Name]}" not found in schema`);let G=$[z];if(!G)throw new Error(`Table "${z}" not found in schema`);let U=Y.sourceTable,W=X[kX(U)];if(!W)throw new Error(`Table "${U[o.Symbol.Name]}" not found in schema`);let Q=[];for(let Z of Object.values(G.relations))if(Y.relationName&&Y!==Z&&Z.relationName===Y.relationName||!Y.relationName&&Z.referencedTable===Y.sourceTable)Q.push(Z);if(Q.length>1)throw Y.relationName?new Error(`There are multiple relations with name "${Y.relationName}" in table "${z}"`):new Error(`There are multiple relations between "${z}" and "${Y.sourceTable[o.Symbol.Name]}". Please specify relation name`);if(Q[0]&&b(Q[0],k8)&&Q[0].config)return{fields:Q[0].config.references,references:Q[0].config.fields};throw new Error(`There is not enough information to infer relation "${W}.${Y.fieldName}"`)}function Nq($){return{one:Bk($),many:Ik($)}}function t3($,X,Y,z,G=(U)=>U){let U={};for(let[W,Q]of z.entries())if(Q.isJson){let Z=X.relations[Q.tsKey],H=Y[W],O=typeof H==="string"?JSON.parse(H):H;U[Q.tsKey]=b(Z,k8)?O&&t3($,$[Q.relationTableTsKey],O,Q.selection,G):O.map((w)=>t3($,$[Q.relationTableTsKey],w,Q.selection,G))}else{let Z=G(Y[W]),H=Q.field,O;if(b(H,r$))O=H;else if(b(H,e))O=H.decoder;else O=H.sql.decoder;U[Q.tsKey]=Z===null?null:O.mapFromDriverValue(Z)}return U}import Ky from"path";import Xb from"os";import Yb from"fs";var a3=new Map,yV=new Map,mV=Symbol("OriginError"),Z2={};class C1 extends Promise{constructor($,X,Y,z,G={}){let U,W;super((Q,Z)=>{U=Q,W=Z});this.tagged=Array.isArray($.raw),this.strings=$,this.args=X,this.handler=Y,this.canceller=z,this.options=G,this.state=null,this.statement=null,this.resolve=(Q)=>(this.active=!1,U(Q)),this.reject=(Q)=>(this.active=!1,W(Q)),this.active=!1,this.cancelled=null,this.executed=!1,this.signature="",this[mV]=this.handler.debug?new Error:this.tagged&&xk(this.strings)}get origin(){return(this.handler.debug?this[mV].stack:this.tagged&&yV.has(this.strings)?yV.get(this.strings):yV.set(this.strings,this[mV].stack).get(this.strings))||""}static get[Symbol.species](){return Promise}cancel(){return this.canceller&&(this.canceller(this),this.canceller=null)}simple(){return this.options.simple=!0,this.options.prepare=!1,this}async readable(){return this.simple(),this.streaming=!0,this}async writable(){return this.simple(),this.streaming=!0,this}cursor($=1,X){if(this.options.simple=!1,typeof $==="function")X=$,$=1;if(this.cursorRows=$,typeof X==="function")return this.cursorFn=X,this;let Y;return{[Symbol.asyncIterator]:()=>({next:()=>{if(this.executed&&!this.active)return{done:!0};Y&&Y();let z=new Promise((G,U)=>{this.cursorFn=(W)=>{return G({value:W,done:!1}),new Promise((Q)=>Y=Q)},this.resolve=()=>(this.active=!1,G({done:!0})),this.reject=(W)=>(this.active=!1,U(W))});return this.execute(),z},return(){return Y&&Y(Z2),{done:!0}}})}}describe(){return this.options.simple=!1,this.onlyDescribe=this.options.prepare=!0,this}stream(){throw new Error(".stream has been renamed to .forEach")}forEach($){return this.forEachFn=$,this.handle(),this}raw(){return this.isRaw=!0,this}values(){return this.isRaw="values",this}async handle(){!this.executed&&(this.executed=!0)&&await 1&&this.handler(this)}execute(){return this.handle(),this}then(){return this.handle(),super.then.apply(this,arguments)}catch(){return this.handle(),super.catch.apply(this,arguments)}finally(){return this.handle(),super.finally.apply(this,arguments)}}function xk($){if(a3.has($))return a3.get($);let X=Error.stackTraceLimit;return Error.stackTraceLimit=4,a3.set($,new Error),Error.stackTraceLimit=X,a3.get($)}class H2 extends Error{constructor($){super($.message);this.name=this.constructor.name,Object.assign(this,$)}}var C6={connection:Eq,postgres:Fq,generic:Mq,notSupported:Lq};function Eq($,X,Y){let{host:z,port:G}=Y||X,U=Object.assign(new Error("write "+$+" "+(X.path||z+":"+G)),{code:$,errno:$,address:X.path||z},X.path?{}:{port:G});return Error.captureStackTrace(U,Eq),U}function Fq($){let X=new H2($);return Error.captureStackTrace(X,Fq),X}function Mq($,X){let Y=Object.assign(new Error($+": "+X),{code:$});return Error.captureStackTrace(Y,Mq),Y}function Lq($){let X=Object.assign(new Error($+" (B) is not supported"),{code:"MESSAGE_NOT_SUPPORTED",name:$});return Error.captureStackTrace(X,Lq),X}var Sk={string:{to:25,from:null,serialize:($)=>""+$},number:{to:0,from:[21,23,26,700,701],serialize:($)=>""+$,parse:($)=>+$},json:{to:114,from:[114,3802],serialize:($)=>JSON.stringify($),parse:($)=>JSON.parse($)},boolean:{to:16,from:16,serialize:($)=>$===!0?"t":"f",parse:($)=>$==="t"},date:{to:1184,from:[1082,1114,1184],serialize:($)=>($ instanceof Date?$:new Date($)).toISOString(),parse:($)=>new Date($)},bytea:{to:17,from:17,serialize:($)=>"\\x"+Buffer.from($).toString("hex"),parse:($)=>Buffer.from($.slice(2),"hex")}};class $U{then(){uV()}catch(){uV()}finally(){uV()}}class v5 extends $U{constructor($){super();this.value=GU($)}}class N0 extends $U{constructor($,X,Y){super();this.value=$,this.type=X,this.array=Y}}class XU extends $U{constructor($,X){super();this.first=$,this.rest=X}build($,X,Y,z){let G=kk.map(([U,W])=>({fn:W,i:$.search(U)})).sort((U,W)=>U.i-W.i).pop();return G.i===-1?iV(this.first,z):G.fn(this.first,this.rest,X,Y,z)}}function YU($,X,Y,z){let G=$ instanceof N0?$.value:$;if(G===void 0){if($ instanceof N0?$.value=z.transform.undefined:G=$=z.transform.undefined,G===void 0)throw C6.generic("UNDEFINED_VALUE","Undefined values are not allowed")}return"$"+Y.push($ instanceof N0?(X.push($.value),$.array?$.array[$.type||e3($.value)]||$.type||_q($.value):$.type):(X.push($),e3($)))}var Aq=Tq(Sk);function dV($,X,Y,z,G,U){for(let W=1;W<$.strings.length;W++)X+=lV(X,Y,z,G,U)+$.strings[W],Y=$.args[W];return X}function lV($,X,Y,z,G){return X instanceof XU?X.build($,Y,z,G):X instanceof C1?pV(X,Y,z,G):X instanceof v5?X.value:X&&X[0]instanceof C1?X.reduce((U,W)=>U+" "+pV(W,Y,z,G),""):YU(X,Y,z,G)}function pV($,X,Y,z){return $.fragment=!0,dV($,$.strings[0],$.args[0],X,Y,z)}function Kq($,X,Y,z,G){return $.map((U)=>"("+z.map((W)=>lV("values",U[W],X,Y,G)).join(",")+")").join(",")}function Jq($,X,Y,z,G){let U=Array.isArray($[0]),W=X.length?X.flat():Object.keys(U?$[0]:$);return Kq(U?$:[$],Y,z,W,G)}function s3($,X,Y,z,G){if(typeof $==="string"&&($=[$].concat(X)),Array.isArray($))return iV($,G);let U;return(X.length?X.flat():Object.keys($)).map((Q)=>{return U=$[Q],(U instanceof C1?pV(U,Y,z,G):U instanceof v5?U.value:YU(U,Y,z,G))+" as "+GU(G.transform.column.to?G.transform.column.to(Q):Q)}).join(",")}var kk=Object.entries({values:Jq,in:(...$)=>{let X=Jq(...$);return X==="()"?"(null)":X},select:s3,as:s3,returning:s3,"\\(":s3,update($,X,Y,z,G){return(X.length?X.flat():Object.keys($)).map((U)=>GU(G.transform.column.to?G.transform.column.to(U):U)+"="+lV("values",$[U],Y,z,G))},insert($,X,Y,z,G){let U=X.length?X.flat():Object.keys(Array.isArray($)?$[0]:$);return"("+iV(U,G)+")values"+Kq(Array.isArray($)?$:[$],Y,z,U,G)}}).map(([$,X])=>[new RegExp("((?:^|[\\s(])"+$+"(?:$|[\\s(]))(?![\\s\\S]*\\1)","i"),X]);function uV(){throw C6.generic("NOT_TAGGED_CALL","Query not called as a tagged template literal")}var{serializers:bk,parsers:fk}=Aq;function _q($){if(Array.isArray($))return _q($[0]);return typeof $==="string"?1009:0}var qq=function($){let X=Tq($||{});return{serializers:Object.assign({},bk,X.serializers),parsers:Object.assign({},fk,X.parsers)}};function Tq($){return Object.keys($).reduce((X,Y)=>{if($[Y].from&&[].concat($[Y].from).forEach((z)=>X.parsers[z]=$[Y].parse),$[Y].serialize)X.serializers[$[Y].to]=$[Y].serialize,$[Y].from&&[].concat($[Y].from).forEach((z)=>X.serializers[z]=$[Y].serialize);return X},{parsers:{},serializers:{}})}function iV($,{transform:{column:X}}){return $.map((Y)=>GU(X.to?X.to(Y):Y)).join(",")}var GU=function $(X){return'"'+X.replace(/"/g,'""').replace(/\./g,'"."')+'"'},e3=function $(X){return X instanceof N0?X.type:X instanceof Date?1184:X instanceof Uint8Array?17:X===!0||X===!1?16:typeof X==="bigint"?20:Array.isArray(X)?$(X[0]):0},hk=/\\/g,gk=/"/g;function yk($){return $.replace(hk,"\\\\").replace(gk,"\\\"")}var Rq=function $(X,Y,z,G){if(Array.isArray(X)===!1)return X;if(!X.length)return"{}";let U=X[0],W=G===1020?";":",";if(Array.isArray(U)&&!U.type)return"{"+X.map((Q)=>$(Q,Y,z,G)).join(W)+"}";return"{"+X.map((Q)=>{if(Q===void 0){if(Q=z.transform.undefined,Q===void 0)throw C6.generic("UNDEFINED_VALUE","Undefined values are not allowed")}return Q===null?"null":'"'+yk(Y?Y(Q.type?Q.value:Q):""+Q)+'"'}).join(W)+"}"},cV={i:0,char:null,str:"",quoted:!1,last:0},Pq=function $(X,Y,z){return cV.i=cV.last=0,vq(cV,X,Y,z)};function vq($,X,Y,z){let G=[],U=z===1020?";":",";for(;$.i<X.length;$.i++){if($.char=X[$.i],$.quoted)if($.char==="\\")$.str+=X[++$.i];else if($.char==='"')G.push(Y?Y($.str):$.str),$.str="",$.quoted=X[$.i+1]==='"',$.last=$.i+2;else $.str+=$.char;else if($.char==='"')$.quoted=!0;else if($.char==="{")$.last=++$.i,G.push(vq($,X,Y,z));else if($.char==="}"){$.quoted=!1,$.last<$.i&&G.push(Y?Y(X.slice($.last,$.i)):X.slice($.last,$.i)),$.last=$.i+1;break}else if($.char===U&&$.p!=="}"&&$.p!=='"')G.push(Y?Y(X.slice($.last,$.i)):X.slice($.last,$.i)),$.last=$.i+1;$.p=$.char}return $.last<$.i&&G.push(Y?Y(X.slice($.last,$.i+1)):X.slice($.last,$.i+1)),G}var bX=($)=>{let X=$[0];for(let Y=1;Y<$.length;Y++)X+=$[Y]==="_"?$[++Y].toUpperCase():$[Y];return X},fX=($)=>{let X=$[0].toUpperCase();for(let Y=1;Y<$.length;Y++)X+=$[Y]==="_"?$[++Y].toUpperCase():$[Y];return X},hX=($)=>$.replace(/_/g,"-"),T5=($)=>$.replace(/([A-Z])/g,"_$1").toLowerCase(),R5=($)=>($.slice(0,1)+$.slice(1).replace(/([A-Z])/g,"_$1")).toLowerCase(),P5=($)=>$.replace(/-/g,"_");function rV($){return function X(Y,z){return typeof Y==="object"&&Y!==null&&(z.type===114||z.type===3802)?Array.isArray(Y)?Y.map((G)=>X(G,z)):Object.entries(Y).reduce((G,[U,W])=>Object.assign(G,{[$(U)]:X(W,z)}),{}):Y}}bX.column={from:bX};bX.value={from:rV(bX)};T5.column={to:T5};var nV={...bX};nV.column.to=T5;fX.column={from:fX};fX.value={from:rV(fX)};R5.column={to:R5};var oV={...fX};oV.column.to=R5;hX.column={from:hX};hX.value={from:rV(hX)};P5.column={to:P5};var tV={...hX};tV.column.to=P5;import Cq from"net";import pk from"tls";import C5 from"crypto";import aV from"stream";import{performance as jq}from"perf_hooks";class gX extends Array{constructor(){super();Object.defineProperties(this,{count:{value:null,writable:!0},state:{value:null,writable:!0},command:{value:null,writable:!0},columns:{value:null,writable:!0},statement:{value:null,writable:!0}})}static get[Symbol.species](){return Array}}var M1=mk;function mk($=[]){let X=$.slice(),Y=0;return{get length(){return X.length-Y},remove:(z)=>{let G=X.indexOf(z);return G===-1?null:(X.splice(G,1),z)},push:(z)=>(X.push(z),z),shift:()=>{let z=X[Y++];if(Y===X.length)Y=0,X=[];else X[Y-1]=void 0;return z}}}var w4=Buffer.allocUnsafe(256),uk="BCcDdEFfHPpQSX".split("").reduce(($,X)=>{let Y=X.charCodeAt(0);return $[X]=()=>{return w4[0]=Y,l$.i=5,l$},$},{}),l$=Object.assign(ck,uk,{N:String.fromCharCode(0),i:0,inc($){return l$.i+=$,l$},str($){let X=Buffer.byteLength($);return zU(X),l$.i+=w4.write($,l$.i,X,"utf8"),l$},i16($){return zU(2),w4.writeUInt16BE($,l$.i),l$.i+=2,l$},i32($,X){if(X||X===0)return w4.writeUInt32BE($,X),l$;return zU(4),w4.writeUInt32BE($,l$.i),l$.i+=4,l$},z($){return zU($),w4.fill(0,l$.i,l$.i+$),l$.i+=$,l$},raw($){return w4=Buffer.concat([w4.subarray(0,l$.i),$]),l$.i=w4.length,l$},end($=1){w4.writeUInt32BE(l$.i-$,$);let X=w4.subarray(0,l$.i);return l$.i=0,w4=Buffer.allocUnsafe(256),X}}),H$=l$;function zU($){if(w4.length-l$.i<$){let X=w4,Y=X.length;w4=Buffer.allocUnsafe(Y+(Y>>1)+$),X.copy(w4)}}function ck(){return l$.i=0,l$}var $D=xq,dk=1,b8=H$().S().end(),Bq=H$().H().end(),lk=H$().i32(8).i32(80877103).end(8),ik=Buffer.concat([H$().E().str(H$.N).i32(0).end(),b8]),rk=H$().D().str("S").str(H$.N).end(),O2=()=>{},nk=new Set(["FetchPreparedStatement","RevalidateCachedQuery","transformAssignedExpr"]),ok={83:"severity_local",86:"severity",67:"code",77:"message",68:"detail",72:"hint",80:"position",112:"internal_position",113:"internal_query",87:"where",115:"schema_name",116:"table_name",99:"column_name",100:"data type_name",110:"constraint_name",70:"file",76:"line",82:"routine"};function xq($,X={},{onopen:Y=O2,onend:z=O2,onclose:G=O2}={}){let{ssl:U,max:W,user:Q,host:Z,port:H,database:O,parsers:w,transform:V,onnotice:D,onnotify:N,onparameter:F,max_pipeline:L,keep_alive:K,backoff:q,target_session_attrs:R}=$,_=M1(),v=dk++,x={pid:null,secret:null},S=eV(nU,$.idle_timeout),m=eV(nU,$.max_lifetime),$$=eV(Jv,$.connect_timeout),I=null,Y$,l=new gX,U$=Buffer.alloc(0),K$=$.fetch_types,b$={},K6={},Y4=Math.random().toString(36).slice(2),u=1,Q$=0,f$=0,H6=0,B6=0,q$=0,c$=0,T6=0,O6=null,G6=null,G4=!1,t$=null,S1=null,n6=null,W8=null,I6=null,z6=null,k1=null,o1=null,a=null,S2=null,z4={queue:X.closed,idleTimer:S,connect(J){n6=J,iN()},terminate:b2,execute:k2,cancel:Ev,end:nU,count:0,id:v};return X.closed&&X.closed.push(z4),z4;async function Nv(){let J;try{J=$.socket?await Promise.resolve($.socket($)):new Cq.Socket}catch(j){nX(j);return}return J.on("error",nX),J.on("close",rN),J.on("drain",dN),J}async function Ev({pid:J,secret:j},w$,h$){try{Y$=H$().i32(16).i32(80877102).i32(J).i32(j).end(16),await lN(),I.once("error",h$),I.once("close",w$)}catch(M6){h$(M6)}}function k2(J){if(G4)return w7(J,C6.connection("CONNECTION_DESTROYED",$));if(J.cancelled)return;try{return J.state=x,a?_.push(J):(a=J,a.active=!0),Lv(J),o6(Fv(J))&&!J.describeFirst&&!J.cursorFn&&_.length<L&&(!J.options.onexecute||J.options.onexecute(z4))}catch(j){return _.length===0&&o6(b8),t1(j),!0}}function Fv(J){if(J.parameters.length>=65534)throw C6.generic("MAX_PARAMETERS_EXCEEDED","Max number of parameters (65534) exceeded");return J.options.simple?H$().Q().str(J.statement.string+H$.N).end():J.describeFirst?Buffer.concat([uN(J),Bq]):J.prepare?J.prepared?O7(J):Buffer.concat([uN(J),O7(J)]):Mv(J)}function uN(J){return Buffer.concat([oN(J.statement.string,J.parameters,J.statement.types,J.statement.name),GC("S",J.statement.name)])}function O7(J){return Buffer.concat([YC(J.parameters,J.statement.types,J.statement.name,J.cursorName),J.cursorFn?tN("",J.cursorRows):ik])}function Mv(J){return Buffer.concat([oN(J.statement.string,J.parameters,J.statement.types),rk,O7(J)])}function Lv(J){let j=[],w$=[],h$=dV(J,J.strings[0],J.args[0],j,w$,$);!J.tagged&&J.args.forEach((M6)=>YU(M6,j,w$,$)),J.prepare=$.prepare&&("prepare"in J.options?J.options.prepare:!0),J.string=h$,J.signature=J.prepare&&w$+h$,J.onlyDescribe&&delete K6[J.signature],J.parameters=J.parameters||j,J.prepared=J.prepare&&J.signature in K6,J.describeFirst=J.onlyDescribe||j.length&&!J.prepared,J.statement=J.prepared?K6[J.signature]:{string:h$,types:w$,name:J.prepare?Y4+u++:""},typeof $.debug==="function"&&$.debug(v,h$,j,w$)}function o6(J,j){if(z6=z6?Buffer.concat([z6,J]):Buffer.from(J),j||z6.length>=1024)return cN(j);return G6===null&&(G6=setImmediate(cN)),!0}function cN(J){let j=I.write(z6,J);return G6!==null&&clearImmediate(G6),z6=G6=null,j}function Jv(){t1(C6.connection("CONNECT_TIMEOUT",$,I)),I.destroy()}async function pN(){if(o6(lk),!await new Promise((j)=>I.once("data",(w$)=>j(w$[0]===83)))&&U==="prefer")return rX();I.removeAllListeners(),I=pk.connect({socket:I,servername:Cq.isIP(I.host)?void 0:I.host,...U==="require"||U==="allow"||U==="prefer"?{rejectUnauthorized:!1}:U==="verify-full"?{}:typeof U==="object"?U:{}}),I.on("secureConnect",rX),I.on("error",nX),I.on("close",rN),I.on("drain",dN)}function dN(){!a&&Y(z4)}function rU(J){if(t$){if(t$.push(J),f$-=J.length,f$>0)return}U$=t$?Buffer.concat(t$,q$-f$):U$.length===0?J:Buffer.concat([U$,J],U$.length+J.length);while(U$.length>4){if(q$=U$.readUInt32BE(1),q$>=U$.length){f$=q$-U$.length,t$=[U$];break}try{Av(U$.subarray(0,q$+1))}catch(j){a&&(a.cursorFn||a.describeFirst)&&o6(b8),t1(j)}U$=U$.subarray(q$+1),f$=0,t$=null}}async function lN(){if(G4=!1,b$={},I||(I=await Nv()),!I)return;if($$.start(),$.socket)return U?pN():rX();if(I.on("connect",U?pN:rX),$.path)return I.connect($.path);I.ssl=U,I.connect(H[H6],Z[H6]),I.host=Z[H6],I.port=H[H6],H6=(H6+1)%H.length}function iN(){setTimeout(lN,Q$?Q$+c$-jq.now():0)}function rX(){try{K6={},K$=$.fetch_types,Y4=Math.random().toString(36).slice(2),u=1,m.start(),I.on("data",rU),K&&I.setKeepAlive&&I.setKeepAlive(!0,1000*K);let J=UC();o6(J)}catch(J){nX(J)}}function nX(J){if(z4.queue===X.connecting&&$.host[B6+1])return;t1(J);while(_.length)w7(_.shift(),J)}function t1(J){I6&&(I6.destroy(J),I6=null),a&&w7(a,J),n6&&(w7(n6,J),n6=null)}function w7(J,j){if(J.reserve)return J.reject(j);if(!j||typeof j!=="object")j=new Error(j);"query"in j||"parameters"in j||Object.defineProperties(j,{stack:{value:j.stack+J.origin.replace(/.*\n/,`
120
120
  `),enumerable:$.debug},query:{value:J.string,enumerable:$.debug},parameters:{value:J.parameters,enumerable:$.debug},args:{value:J.args,enumerable:$.debug},types:{value:J.statement&&J.statement.types,enumerable:$.debug}}),J.reject(j)}function nU(){return W8||(!z4.reserved&&z(z4),!z4.reserved&&!n6&&!a&&_.length===0?(b2(),new Promise((J)=>I&&I.readyState!=="closed"?I.once("close",J):J())):W8=new Promise((J)=>k1=J))}function b2(){if(G4=!0,I6||a||n6||_.length)nX(C6.connection("CONNECTION_DESTROYED",$));if(clearImmediate(G6),I)I.removeListener("data",rU),I.removeListener("connect",rX),I.readyState==="open"&&I.end(H$().X().end());k1&&(k1(),W8=k1=null)}async function rN(J){if(U$=Buffer.alloc(0),f$=0,t$=null,clearImmediate(G6),I.removeListener("data",rU),I.removeListener("connect",rX),S.cancel(),m.cancel(),$$.cancel(),I.removeAllListeners(),I=null,n6)return iN();!J&&(a||_.length)&&nX(C6.connection("CONNECTION_CLOSED",$,I)),Q$=jq.now(),J&&$.shared.retries++,c$=(typeof q==="function"?q($.shared.retries):q)*1000,G(z4,C6.connection("CONNECTION_CLOSED",$,I))}function Av(J,j=J[0]){(j===68?Kv:j===100?nv:j===65?cv:j===83?_v:j===90?qv:j===67?Tv:j===50?nN:j===49?Rv:j===116?Pv:j===84?vv:j===82?Cv:j===110?kv:j===75?bv:j===69?mv:j===115?pv:j===51?dv:j===71?lv:j===78?tv:j===72?iv:j===99?ov:j===73?av:j===86?sv:j===118?ev:j===87?rv:$C)(J)}function Kv(J){let j=7,w$,h$,M6,U4=a.isRaw?new Array(a.statement.columns.length):{};for(let N4=0;N4<a.statement.columns.length;N4++)h$=a.statement.columns[N4],w$=J.readInt32BE(j),j+=4,M6=w$===-1?null:a.isRaw===!0?J.subarray(j,j+=w$):h$.parser===void 0?J.toString("utf8",j,j+=w$):h$.parser.array===!0?h$.parser(J.toString("utf8",j+1,j+=w$)):h$.parser(J.toString("utf8",j,j+=w$)),a.isRaw?U4[N4]=a.isRaw===!0?M6:V.value.from?V.value.from(M6,h$):M6:U4[h$.name]=V.value.from?V.value.from(M6,h$):M6;a.forEachFn?a.forEachFn(V.row.from?V.row.from(U4):U4,l):l[T6++]=V.row.from?V.row.from(U4):U4}function _v(J){let[j,w$]=J.toString("utf8",5,J.length-1).split(H$.N);if(b$[j]=w$,$.parameters[j]!==w$)$.parameters[j]=w$,F&&F(j,w$)}function qv(J){if(a&&a.options.simple&&a.resolve(S1||l),a=S1=null,l=new gX,$$.cancel(),n6){if(R){if(!b$.in_hot_standby||!b$.default_transaction_read_only)return yv();else if(gv(R,b$))return b2()}if(K$)return n6.reserve&&(n6=null),fv();n6&&!n6.reserve&&k2(n6),$.shared.retries=B6=0,n6=null;return}while(_.length&&(a=_.shift())&&(a.active=!0,a.cancelled))xq($).cancel(a.state,a.cancelled.resolve,a.cancelled.reject);if(a)return;z4.reserved?!z4.reserved.release&&J[5]===73?W8?b2():(z4.reserved=null,Y(z4)):z4.reserved():W8?b2():Y(z4)}function Tv(J){T6=0;for(let j=J.length-1;j>0;j--){if(J[j]===32&&J[j+1]<58&&l.count===null)l.count=+J.toString("utf8",j+1,J.length-1);if(J[j-1]>=65){l.command=J.toString("utf8",5,j),l.state=x;break}}if(S2&&(S2(),S2=null),l.command==="BEGIN"&&W!==1&&!z4.reserved)return t1(C6.generic("UNSAFE_TRANSACTION","Only use sql.begin, sql.reserved or max: 1"));if(a.options.simple)return nN();if(a.cursorFn)l.count&&a.cursorFn(l),o6(b8);a.resolve(l)}function Rv(){a.parsing=!1}function nN(){!l.statement&&(l.statement=a.statement),l.columns=a.statement.columns}function Pv(J){let j=J.readUInt16BE(5);for(let w$=0;w$<j;++w$)!a.statement.types[w$]&&(a.statement.types[w$]=J.readUInt32BE(7+w$*4));a.prepare&&(K6[a.signature]=a.statement),a.describeFirst&&!a.onlyDescribe&&(o6(O7(a)),a.describeFirst=!1)}function vv(J){if(l.command)S1=S1||[l],S1.push(l=new gX),l.count=null,a.statement.columns=null;let j=J.readUInt16BE(5),w$=7,h$;a.statement.columns=Array(j);for(let M6=0;M6<j;++M6){h$=w$;while(J[w$++]!==0);let U4=J.readUInt32BE(w$),N4=J.readUInt16BE(w$+4),Q8=J.readUInt32BE(w$+6);a.statement.columns[M6]={name:V.column.from?V.column.from(J.toString("utf8",h$,w$-1)):J.toString("utf8",h$,w$-1),parser:w[Q8],table:U4,number:N4,type:Q8},w$+=18}if(l.statement=a.statement,a.onlyDescribe)return a.resolve(a.statement),o6(b8)}async function Cv(J,j=J.readUInt32BE(5)){(j===3?jv:j===5?Bv:j===10?Iv:j===11?xv:j===12?Sv:j!==0?XC:O2)(J,j)}async function jv(){let J=await oU();o6(H$().p().str(J).z(1).end())}async function Bv(J){let j="md5"+await Iq(Buffer.concat([Buffer.from(await Iq(await oU()+Q)),J.subarray(9)]));o6(H$().p().str(j).z(1).end())}async function Iv(){o1=(await C5.randomBytes(18)).toString("base64"),H$().p().str("SCRAM-SHA-256"+H$.N);let J=H$.i;o6(H$.inc(4).str("n,,n=*,r="+o1).i32(H$.i-J-4,J).end())}async function xv(J){let j=J.toString("utf8",9).split(",").reduce((N4,Q8)=>(N4[Q8[0]]=Q8.slice(2),N4),{}),w$=await C5.pbkdf2Sync(await oU(),Buffer.from(j.s,"base64"),parseInt(j.i),32,"sha256"),h$=await UU(w$,"Client Key"),M6="n=*,r="+o1+",r="+j.r+",s="+j.s+",i="+j.i+",c=biws,r="+j.r;O6=(await UU(await UU(w$,"Server Key"),M6)).toString("base64");let U4="c=biws,r="+j.r+",p="+ak(h$,Buffer.from(await UU(await tk(h$),M6))).toString("base64");o6(H$().p().str(U4).end())}function Sv(J){if(J.toString("utf8",9).split(H$.N,1)[0].slice(2)===O6)return;t1(C6.generic("SASL_SIGNATURE_MISMATCH","The server did not return the correct signature")),I.destroy()}function oU(){return Promise.resolve(typeof $.pass==="function"?$.pass():$.pass)}function kv(){if(l.statement=a.statement,l.statement.columns=[],a.onlyDescribe)return a.resolve(a.statement),o6(b8)}function bv(J){x.pid=J.readUInt32BE(5),x.secret=J.readUInt32BE(9)}async function fv(){K$=!1,(await new C1([`
121
121
  select b.oid, b.typarray
122
122
  from pg_catalog.pg_type a
@@ -148,17 +148,17 @@ params: ${X}`);if(this.query=$,this.params=X,this.cause=Y,Error.captureStackTrac
148
148
  Message: ${z}
149
149
  Source: (${$.slice(0,-1)}) => {
150
150
  ${$.at(-1)}
151
- }`)}}};class l1{constructor($,...[X]){return Object.assign(Object.setPrototypeOf($.bind(X?.bind??this),this.constructor.prototype),X?.attach)}}var zT=Pb(()=>{try{return new Function("return false")()}catch{return!0}});var u0$=d1("brand");var UT=d1("arkInferred");var d0$=d1("args");class V4{constructor(){}}var vb=()=>{try{return((new Error().stack?.split(`
152
- `)[2]?.trim()||"").match(/\(?(.+?)(?::\d+:\d+)?\)?$/)?.[1]||"unknown").replace(/^file:\/\//,"")}catch{return"unknown"}},Cb=globalThis.process?.env??{},WT={fileName:vb,env:Cb};var QT=($)=>$[0].toUpperCase()+$.slice(1);var TD=($)=>new RegExp(jb($),typeof $==="string"?"":$.flags);var jb=($)=>{return`^(?:${typeof $==="string"?$:$.source})$`};var s0={negativeLookahead:($)=>`(?!${$})`,nonCapturingGroup:($)=>`(?:${$})`},m5="\\",g8={" ":1,"\n":1,"\t":1};var Bb=/^-0\.?0*$/.source,HT=/[1-9]\d*/.source,Ib=/\.\d+/.source,xb=/\.\d*[1-9]/.source,OT=($)=>TD(s0.negativeLookahead(Bb)+s0.nonCapturingGroup("-?"+s0.nonCapturingGroup(s0.nonCapturingGroup("0|"+HT)+s0.nonCapturingGroup($.decimalPattern)+"?")+($.allowDecimalOnly?"|"+$.decimalPattern:"")+"?")),ZT=OT({decimalPattern:xb,allowDecimalOnly:!1}),Sb=ZT.test.bind(ZT),NU=OT({decimalPattern:Ib,allowDecimalOnly:!0}),a0$=NU.test.bind(NU),kb=/^-?\d*\.?\d*$/,bb=($)=>$.length!==0&&kb.test($),u5=TD(s0.negativeLookahead("^-0$")+"-?"+s0.nonCapturingGroup(s0.nonCapturingGroup("0|"+HT))),fb=u5.test.bind(u5),RD=/^-?\d+$/,hb=RD.test.bind(RD),wT={number:"a number",bigint:"a bigint",integer:"an integer"},VT=($,X)=>`'${$}' was parsed as ${wT[X]} but could not be narrowed to a literal value. Avoid unnecessary leading or trailing zeros and other abnormal notation`,gb=($,X)=>X==="number"?Sb($):fb($),yb=($,X)=>X==="number"?Number($):Number.parseInt($),mb=($,X)=>X==="number"?bb($):hb($),DT=($,X)=>PD($,"number",X),NT=($,X)=>PD($,"number",{...X,strict:!0}),ET=($,X)=>PD($,"integer",X),PD=($,X,Y)=>{let z=yb($,X);if(!Number.isNaN(z)){if(mb($,X)){if(Y?.strict)return gb($,X)?z:f(VT($,X));return z}}return Y?.errorOnFail?f(Y?.errorOnFail===!0?`Failed to parse ${wT[X]} from '${$}'`:Y?.errorOnFail):void 0},FT=($)=>{if($[$.length-1]!=="n")return;let X=$.slice(0,-1),Y;try{Y=BigInt(X)}catch{return}if(u5.test(X))return Y;if(RD.test(X))return f(VT($,"bigint"))};var ub="0.46.0",cb={version:ub,filename:WT.fileName(),FileConstructor:KD},pX=cb,MT=new Map,vD=Object.create(null),c5=($)=>{let X=MT.get($);if(X)return X;let Y=pb($);if(vD[Y])Y=`${Y}${vD[Y]++}`;else vD[Y]=1;return pX[Y]=$,MT.set($,Y),Y},y8=($)=>/^[$A-Z_a-z][\w$]*$/.test($),pb=($)=>{switch(typeof $){case"object":{if($===null)break;let X=h5($)??"object";return X[0].toLowerCase()+X.slice(1)}case"function":return y8($.name)?$.name:"fn";case"symbol":return $.description&&y8($.description)?$.description:"symbol"}return S$(`Unexpected attempt to register serializable value of type ${u6($)}`)};var p5=($)=>typeof $==="string"?JSON.stringify($):typeof $==="bigint"?`${$}n`:`${$}`;var LT=($,X={})=>d5($,{onUndefined:"$ark.undefined",onBigInt:(Y)=>`$ark.bigint-${Y}`,...X},[]);var J$=($,X)=>{switch(u6($)){case"object":let Y=$,z=Y.constructor.name;return z==="Object"||z==="Array"?X?.quoteKeys===!1?EU(Y,X?.indent??0,""):JSON.stringify(d5(Y,E2,[]),null,X?.indent):EU(Y,X?.indent??0,"");case"symbol":return E2.onSymbol($);default:return p5($)}},EU=($,X,Y)=>{if(typeof $==="function")return E2.onFunction($);if(typeof $!=="object"||$===null)return p5($);let z=Y+" ".repeat(X);if(Array.isArray($)){if($.length===0)return"[]";let U=$.map((W)=>EU(W,X,z)).join(`,
151
+ }`)}}};class l1{constructor($,...[X]){return Object.assign(Object.setPrototypeOf($.bind(X?.bind??this),this.constructor.prototype),X?.attach)}}var zT=Pb(()=>{try{return new Function("return false")()}catch{return!0}});var y0$=d1("brand");var UT=d1("arkInferred");var c0$=d1("args");class V4{constructor(){}}var vb=()=>{try{return((new Error().stack?.split(`
152
+ `)[2]?.trim()||"").match(/\(?(.+?)(?::\d+:\d+)?\)?$/)?.[1]||"unknown").replace(/^file:\/\//,"")}catch{return"unknown"}},Cb=globalThis.process?.env??{},WT={fileName:vb,env:Cb};var QT=($)=>$[0].toUpperCase()+$.slice(1);var TD=($)=>new RegExp(jb($),typeof $==="string"?"":$.flags);var jb=($)=>{return`^(?:${typeof $==="string"?$:$.source})$`};var s0={negativeLookahead:($)=>`(?!${$})`,nonCapturingGroup:($)=>`(?:${$})`},m5="\\",g8={" ":1,"\n":1,"\t":1};var Bb=/^-0\.?0*$/.source,HT=/[1-9]\d*/.source,Ib=/\.\d+/.source,xb=/\.\d*[1-9]/.source,OT=($)=>TD(s0.negativeLookahead(Bb)+s0.nonCapturingGroup("-?"+s0.nonCapturingGroup(s0.nonCapturingGroup("0|"+HT)+s0.nonCapturingGroup($.decimalPattern)+"?")+($.allowDecimalOnly?"|"+$.decimalPattern:"")+"?")),ZT=OT({decimalPattern:xb,allowDecimalOnly:!1}),Sb=ZT.test.bind(ZT),NU=OT({decimalPattern:Ib,allowDecimalOnly:!0}),o0$=NU.test.bind(NU),kb=/^-?\d*\.?\d*$/,bb=($)=>$.length!==0&&kb.test($),u5=TD(s0.negativeLookahead("^-0$")+"-?"+s0.nonCapturingGroup(s0.nonCapturingGroup("0|"+HT))),fb=u5.test.bind(u5),RD=/^-?\d+$/,hb=RD.test.bind(RD),wT={number:"a number",bigint:"a bigint",integer:"an integer"},VT=($,X)=>`'${$}' was parsed as ${wT[X]} but could not be narrowed to a literal value. Avoid unnecessary leading or trailing zeros and other abnormal notation`,gb=($,X)=>X==="number"?Sb($):fb($),yb=($,X)=>X==="number"?Number($):Number.parseInt($),mb=($,X)=>X==="number"?bb($):hb($),DT=($,X)=>PD($,"number",X),NT=($,X)=>PD($,"number",{...X,strict:!0}),ET=($,X)=>PD($,"integer",X),PD=($,X,Y)=>{let z=yb($,X);if(!Number.isNaN(z)){if(mb($,X)){if(Y?.strict)return gb($,X)?z:f(VT($,X));return z}}return Y?.errorOnFail?f(Y?.errorOnFail===!0?`Failed to parse ${wT[X]} from '${$}'`:Y?.errorOnFail):void 0},FT=($)=>{if($[$.length-1]!=="n")return;let X=$.slice(0,-1),Y;try{Y=BigInt(X)}catch{return}if(u5.test(X))return Y;if(RD.test(X))return f(VT($,"bigint"))};var ub="0.46.0",cb={version:ub,filename:WT.fileName(),FileConstructor:KD},pX=cb,MT=new Map,vD=Object.create(null),c5=($)=>{let X=MT.get($);if(X)return X;let Y=pb($);if(vD[Y])Y=`${Y}${vD[Y]++}`;else vD[Y]=1;return pX[Y]=$,MT.set($,Y),Y},y8=($)=>/^[$A-Z_a-z][\w$]*$/.test($),pb=($)=>{switch(typeof $){case"object":{if($===null)break;let X=h5($)??"object";return X[0].toLowerCase()+X.slice(1)}case"function":return y8($.name)?$.name:"fn";case"symbol":return $.description&&y8($.description)?$.description:"symbol"}return S$(`Unexpected attempt to register serializable value of type ${u6($)}`)};var p5=($)=>typeof $==="string"?JSON.stringify($):typeof $==="bigint"?`${$}n`:`${$}`;var LT=($,X={})=>d5($,{onUndefined:"$ark.undefined",onBigInt:(Y)=>`$ark.bigint-${Y}`,...X},[]);var J$=($,X)=>{switch(u6($)){case"object":let Y=$,z=Y.constructor.name;return z==="Object"||z==="Array"?X?.quoteKeys===!1?EU(Y,X?.indent??0,""):JSON.stringify(d5(Y,E2,[]),null,X?.indent):EU(Y,X?.indent??0,"");case"symbol":return E2.onSymbol($);default:return p5($)}},EU=($,X,Y)=>{if(typeof $==="function")return E2.onFunction($);if(typeof $!=="object"||$===null)return p5($);let z=Y+" ".repeat(X);if(Array.isArray($)){if($.length===0)return"[]";let U=$.map((W)=>EU(W,X,z)).join(`,
153
153
  `+z);return X?`[
154
154
  ${z}${U}
155
155
  ${Y}]`:`[${U}]`}let G=$.constructor.name;if(G==="Object"){let U=uX($).map(([W,Q])=>{let Z=typeof W==="symbol"?E2.onSymbol(W):y8(W)?W:JSON.stringify(W),H=EU(Q,X,z);return`${z}${Z}: ${H}`});if(U.length===0)return"{}";return X?`{
156
156
  ${U.join(`,
157
157
  `)}
158
- ${Y}}`:`{${U.join(", ")}}`}if($ instanceof Date)return dX($);if("expression"in $&&typeof $.expression==="string")return $.expression;return G},E2={onCycle:()=>"(cycle)",onSymbol:($)=>`Symbol(${c5($)})`,onFunction:($)=>`Function(${c5($)})`},d5=($,X,Y)=>{switch(u6($)){case"object":{let z=$;if("toJSON"in z&&typeof z.toJSON==="function")return z.toJSON();if(typeof z==="function")return E2.onFunction(z);if(Y.includes(z))return"(cycle)";let G=[...Y,z];if(Array.isArray(z))return z.map((W)=>d5(W,X,G));if(z instanceof Date)return z.toDateString();let U={};for(let W in z)U[W]=d5(z[W],X,G);for(let W of Object.getOwnPropertySymbols(z))U[X.onSymbol?.(W)??W.toString()]=d5(z[W],X,G);return U}case"symbol":return E2.onSymbol($);case"bigint":return X.onBigInt?.($)??`${$}n`;case"undefined":return X.onUndefined??"undefined";case"string":return $.replaceAll("\\","\\\\");default:return $}},dX=($)=>{let X=$.getFullYear(),Y=$.getMonth(),z=$.getDate(),G=$.getHours(),U=$.getMinutes(),W=$.getSeconds(),Q=$.getMilliseconds();if(Y===0&&z===1&&G===0&&U===0&&W===0&&Q===0)return`${X}`;let Z=`${db[Y]} ${z}, ${X}`;if(G===0&&U===0&&W===0&&Q===0)return Z;let H=$.toLocaleTimeString(),O=H.endsWith(" AM")||H.endsWith(" PM")?H.slice(-3):"";if(O)H=H.slice(0,-O.length);if(Q)H+=`.${ib(Q,3)}`;else if(lb.test(H))H=H.slice(0,-3);return`${H+O}, ${Z}`},db=["January","February","March","April","May","June","July","August","September","October","November","December"],lb=/:\d\d:00$/,ib=($,X)=>String($).padStart(X,"0");var JT=($,X,...[Y])=>{let z=Y?.stringifySymbol??J$,G=$;switch(typeof X){case"string":G=y8(X)?$===""?X:`${$}.${X}`:`${$}[${JSON.stringify(X)}]`;break;case"number":G=`${$}[${X}]`;break;case"symbol":G=`${$}[${z(X)}]`;break;default:if(Y?.stringifyNonKey)G=`${$}[${Y.stringifyNonKey(X)}]`;else f(`${J$(X)} must be a PropertyKey or stringifyNonKey must be passed to options`)}return G},e0=($,...X)=>$.reduce((Y,z)=>JT(Y,z,...X),"");class l5 extends DU{cache={};constructor(...$){super();this.push(...$)}toJSON(){if(this.cache.json)return this.cache.json;this.cache.json=[];for(let $=0;$<this.length;$++)this.cache.json.push(typeof this[$]==="symbol"?J$(this[$]):this[$]);return this.cache.json}stringify(){if(this.cache.stringify)return this.cache.stringify;return this.cache.stringify=e0(this)}stringifyAncestors(){if(this.cache.stringifyAncestors)return this.cache.stringifyAncestors;let $="",X=[$];for(let Y of this)$=JT($,Y),X.push($);return this.cache.stringifyAncestors=X}}class CD{chars;i;def;constructor($){this.def=$,this.chars=[...$],this.i=0}shift(){return this.chars[this.i++]??""}get lookahead(){return this.chars[this.i]??""}get nextLookahead(){return this.chars[this.i+1]??""}get length(){return this.chars.length}shiftUntil($){let X="";while(this.lookahead){if($(this,X))if(X[X.length-1]===m5)X=X.slice(0,-1);else break;X+=this.shift()}return X}shiftUntilLookahead($){return typeof $==="string"?this.shiftUntil((X)=>X.lookahead===$):this.shiftUntil((X)=>(X.lookahead in $))}shiftUntilNonWhitespace(){return this.shiftUntil(()=>!(this.lookahead in g8))}jumpToIndex($){this.i=$<0?this.length+$:$}jumpForward($){this.i+=$}get location(){return this.i}get unscanned(){return this.chars.slice(this.i,this.length).join("")}get scanned(){return this.chars.slice(0,this.i).join("")}sliceChars($,X){return this.chars.slice($,X).join("")}lookaheadIs($){return this.lookahead===$}lookaheadIsIn($){return this.lookahead in $}}var _8$=d1("implementedTraits");var jD="$ark",rb=2;while(jD in globalThis)jD=`$ark${rb++}`;var AT=jD;globalThis[AT]=pX;var g=pX,nb=($)=>`${AT}.${$}`,F6=($)=>nb(c5($));class FU extends f5{argNames;body="";constructor(...$){super();this.argNames=$;for(let X of $){if(X in this)throw new Error(`Arg name '${X}' would overwrite an existing property on FunctionBody`);this[X]=X}}indentation=0;indent(){return this.indentation+=4,this}dedent(){return this.indentation-=4,this}prop($,X=!1){return BD($,X)}index($,X=!1){return KT(`${$}`,X)}line($){return this.body+=`${" ".repeat(this.indentation)}${$}
158
+ ${Y}}`:`{${U.join(", ")}}`}if($ instanceof Date)return dX($);if("expression"in $&&typeof $.expression==="string")return $.expression;return G},E2={onCycle:()=>"(cycle)",onSymbol:($)=>`Symbol(${c5($)})`,onFunction:($)=>`Function(${c5($)})`},d5=($,X,Y)=>{switch(u6($)){case"object":{let z=$;if("toJSON"in z&&typeof z.toJSON==="function")return z.toJSON();if(typeof z==="function")return E2.onFunction(z);if(Y.includes(z))return"(cycle)";let G=[...Y,z];if(Array.isArray(z))return z.map((W)=>d5(W,X,G));if(z instanceof Date)return z.toDateString();let U={};for(let W in z)U[W]=d5(z[W],X,G);for(let W of Object.getOwnPropertySymbols(z))U[X.onSymbol?.(W)??W.toString()]=d5(z[W],X,G);return U}case"symbol":return E2.onSymbol($);case"bigint":return X.onBigInt?.($)??`${$}n`;case"undefined":return X.onUndefined??"undefined";case"string":return $.replaceAll("\\","\\\\");default:return $}},dX=($)=>{let X=$.getFullYear(),Y=$.getMonth(),z=$.getDate(),G=$.getHours(),U=$.getMinutes(),W=$.getSeconds(),Q=$.getMilliseconds();if(Y===0&&z===1&&G===0&&U===0&&W===0&&Q===0)return`${X}`;let Z=`${db[Y]} ${z}, ${X}`;if(G===0&&U===0&&W===0&&Q===0)return Z;let H=$.toLocaleTimeString(),O=H.endsWith(" AM")||H.endsWith(" PM")?H.slice(-3):"";if(O)H=H.slice(0,-O.length);if(Q)H+=`.${ib(Q,3)}`;else if(lb.test(H))H=H.slice(0,-3);return`${H+O}, ${Z}`},db=["January","February","March","April","May","June","July","August","September","October","November","December"],lb=/:\d\d:00$/,ib=($,X)=>String($).padStart(X,"0");var JT=($,X,...[Y])=>{let z=Y?.stringifySymbol??J$,G=$;switch(typeof X){case"string":G=y8(X)?$===""?X:`${$}.${X}`:`${$}[${JSON.stringify(X)}]`;break;case"number":G=`${$}[${X}]`;break;case"symbol":G=`${$}[${z(X)}]`;break;default:if(Y?.stringifyNonKey)G=`${$}[${Y.stringifyNonKey(X)}]`;else f(`${J$(X)} must be a PropertyKey or stringifyNonKey must be passed to options`)}return G},e0=($,...X)=>$.reduce((Y,z)=>JT(Y,z,...X),"");class l5 extends DU{cache={};constructor(...$){super();this.push(...$)}toJSON(){if(this.cache.json)return this.cache.json;this.cache.json=[];for(let $=0;$<this.length;$++)this.cache.json.push(typeof this[$]==="symbol"?J$(this[$]):this[$]);return this.cache.json}stringify(){if(this.cache.stringify)return this.cache.stringify;return this.cache.stringify=e0(this)}stringifyAncestors(){if(this.cache.stringifyAncestors)return this.cache.stringifyAncestors;let $="",X=[$];for(let Y of this)$=JT($,Y),X.push($);return this.cache.stringifyAncestors=X}}class CD{chars;i;def;constructor($){this.def=$,this.chars=[...$],this.i=0}shift(){return this.chars[this.i++]??""}get lookahead(){return this.chars[this.i]??""}get nextLookahead(){return this.chars[this.i+1]??""}get length(){return this.chars.length}shiftUntil($){let X="";while(this.lookahead){if($(this,X))if(X[X.length-1]===m5)X=X.slice(0,-1);else break;X+=this.shift()}return X}shiftUntilLookahead($){return typeof $==="string"?this.shiftUntil((X)=>X.lookahead===$):this.shiftUntil((X)=>(X.lookahead in $))}shiftUntilNonWhitespace(){return this.shiftUntil(()=>!(this.lookahead in g8))}jumpToIndex($){this.i=$<0?this.length+$:$}jumpForward($){this.i+=$}get location(){return this.i}get unscanned(){return this.chars.slice(this.i,this.length).join("")}get scanned(){return this.chars.slice(0,this.i).join("")}sliceChars($,X){return this.chars.slice($,X).join("")}lookaheadIs($){return this.lookahead===$}lookaheadIsIn($){return this.lookahead in $}}var A8$=d1("implementedTraits");var jD="$ark",rb=2;while(jD in globalThis)jD=`$ark${rb++}`;var AT=jD;globalThis[AT]=pX;var g=pX,nb=($)=>`${AT}.${$}`,F6=($)=>nb(c5($));class FU extends f5{argNames;body="";constructor(...$){super();this.argNames=$;for(let X of $){if(X in this)throw new Error(`Arg name '${X}' would overwrite an existing property on FunctionBody`);this[X]=X}}indentation=0;indent(){return this.indentation+=4,this}dedent(){return this.indentation-=4,this}prop($,X=!1){return BD($,X)}index($,X=!1){return KT(`${$}`,X)}line($){return this.body+=`${" ".repeat(this.indentation)}${$}
159
159
  `,this}const($,X){return this.line(`const ${$} = ${X}`),this}let($,X){return this.line(`let ${$} = ${X}`)}set($,X){return this.line(`${$} = ${X}`)}if($,X){return this.block(`if (${$})`,X)}elseIf($,X){return this.block(`else if (${$})`,X)}else($){return this.block("else",$)}for($,X,Y=0){return this.block(`for (let i = ${Y}; ${$}; i++)`,X)}forIn($,X){return this.block(`for (const k in ${$})`,X)}block($,X,Y=""){return this.line(`${$} {`),this.indent(),X(this),this.dedent(),this.line(`}${Y}`)}return($=""){return this.line(`return ${$}`)}write($="anonymous",X=0){return`${$}(${this.argNames.join(", ")}) { ${X?this.body.split(`
160
160
  `).map((Y)=>" ".repeat(X)+`${Y}`).join(`
161
- `):this.body} }`}compile(){return new GT(...this.argNames,this.body)}}var $8=($)=>a4($,"object")||typeof $==="symbol"?F6($):p5($),BD=($,X=!1)=>{if(typeof $==="string"&&y8($))return`${X?"?":""}.${$}`;return KT(ob($),X)},ob=($)=>typeof $==="symbol"?F6($):JSON.stringify($),KT=($,X=!1)=>`${X?"?.":""}[${$}]`;class i5 extends FU{traversalKind;optimistic;constructor($){super("data","ctx");this.traversalKind=$.kind,this.optimistic=$.optimistic===!0}invoke($,X){let Y=X?.arg??this.data,z=typeof $==="string"?!0:this.requiresContextFor($),G=typeof $==="string"?$:$.id;if(z)return`${this.referenceToId(G,X)}(${Y}, ${this.ctx})`;return`${this.referenceToId(G,X)}(${Y})`}referenceToId($,X){let Y=X?.kind??this.traversalKind,z=`this.${$}${Y}`;return X?.bind?`${z}.bind(${X?.bind})`:z}requiresContextFor($){return this.traversalKind==="Apply"||$.allowsRequiresContext}initializeErrorCount(){return this.const("errorCount","ctx.currentErrorCount")}returnIfFail(){return this.if("ctx.currentErrorCount > errorCount",()=>this.return())}returnIfFailFast(){return this.if("ctx.failFast && ctx.currentErrorCount > errorCount",()=>this.return())}traverseKey($,X,Y){let z=this.requiresContextFor(Y);if(z)this.line(`${this.ctx}.path.push(${$})`);if(this.check(Y,{arg:X}),z)this.line(`${this.ctx}.path.pop()`);return this}check($,X){return this.traversalKind==="Allows"?this.if(`!${this.invoke($,X)}`,()=>this.return(!1)):this.line(this.invoke($,X))}}var MU=($)=>L$($,(X,Y)=>[X,o$(Y)?[...Y]:Y]),f4=d1("arkKind"),z$=($,X)=>$?.[f4]===X,X6=($)=>z$($,"root")||z$($,"constraint");var _T=["unit","proto","domain"],F2=["required","optional","index","sequence"],ID=["pattern","divisor","exactLength","max","min","maxLength","minLength","before","after"],LU=[...ID,...F2,"structure","predicate"],M2=["alias","union","morph","unit","intersection","proto","domain"],tb=[...M2,...LU],JU=L$(LU,($,X)=>[X,1]),qT=L$([...F2,"undeclared"],($,X)=>[X,1]),TT=L$(tb,($,X)=>[X,$]),L2=($)=>typeof $==="string"&&($ in TT);var J2=($)=>TT[$],AU=($)=>M2.slice(J2($)+1),UX$=[...AU("union"),"alias"],WX$=[...AU("morph"),"alias"],j1=($)=>{if(typeof $==="string"||typeof $==="boolean"||$===null)return $;if(typeof $==="number"){if(Number.isNaN($))return"NaN";if($===Number.POSITIVE_INFINITY)return"Infinity";if($===Number.NEGATIVE_INFINITY)return"-Infinity";return $}return $8($)},m8=($)=>{let X="{ ";for(let[Y,z]of Object.entries($))X+=`${Y}: ${$8(z)}, `;return X+" }"},A$=($)=>{let X=$;if(X.hasAssociatedError)X.defaults.expected??=(Y)=>("description"in Y)?Y.description:X.defaults.description(Y),X.defaults.actual??=(Y)=>J$(Y),X.defaults.problem??=(Y)=>`must be ${Y.expected}${Y.actual?` (was ${Y.actual})`:""}`,X.defaults.message??=(Y)=>{if(Y.path.length===0)return Y.problem;let z=`${Y.propString} ${Y.problem}`;if(z[0]==="[")return`value at ${z}`;return z};return X};class RT extends Error{name="ToJsonSchemaError";code;context;constructor($,X){super(J$(X,{quoteKeys:!1,indent:4}));this.code=$,this.context=X}hasCode($){return this.code===$}}var ab={dialect:"https://json-schema.org/draft/2020-12/schema",useRefs:!1,fallback:{arrayObject:($)=>Q6.throw("arrayObject",$),arrayPostfix:($)=>Q6.throw("arrayPostfix",$),defaultValue:($)=>Q6.throw("defaultValue",$),domain:($)=>Q6.throw("domain",$),morph:($)=>Q6.throw("morph",$),patternIntersection:($)=>Q6.throw("patternIntersection",$),predicate:($)=>Q6.throw("predicate",$),proto:($)=>Q6.throw("proto",$),symbolKey:($)=>Q6.throw("symbolKey",$),unit:($)=>Q6.throw("unit",$),date:($)=>Q6.throw("date",$)}},Q6={Error:RT,throw:(...$)=>{throw new Q6.Error(...$)},throwInternalOperandError:($,X)=>S$(`Unexpected JSON Schema input for ${$}: ${J$(X)}`),defaultConfig:ab};g.config??={};var r5=($,X)=>{if(!X)return $;let Y={...$},z;for(z in X){let G={...$.keywords};if(z==="keywords"){for(let U in X[z]){let W=X.keywords[U];if(W===void 0)continue;G[U]=typeof W==="string"?{description:W}:W}Y.keywords=G}else if(z==="toJsonSchema")Y[z]=xD($.toJsonSchema,X.toJsonSchema);else if(L2(z))Y[z]={...$[z],...X[z]};else Y[z]=X[z]}return Y},xD=($,X)=>{if(!$)return X??{};if(!X)return $;let Y={...$},z;for(z in X)if(z==="fallback")Y.fallback=sb($.fallback,X.fallback);else Y[z]=X[z];return Y},sb=($,X)=>{$=PT($),X=PT(X);let Y={},z;for(z in Q6.defaultConfig.fallback)Y[z]=X[z]??X.default??$[z]??$.default??Q6.defaultConfig.fallback[z];return Y},PT=($)=>typeof $==="function"?{default:$}:$??{};class u8 extends f5{[f4]="error";path;data;nodeConfig;input;ctx;constructor({prefixPath:$,relativePath:X,...Y},z){super();this.input=Y,this.ctx=z,aq(this,Y);let G=z.data;if(Y.code==="union")Y.errors=Y.errors.flatMap((W)=>{let Q=W.hasCode("union")?W.errors:[W];if(!$&&!X)return Q;return Q.map((Z)=>Z.transform((H)=>({...H,path:lq($,H.path,X)})))});this.nodeConfig=z.config[this.code];let U=[...Y.path??z.path];if(X)U.push(...X);if($)U.unshift(...$);this.path=new l5(...U),this.data="data"in Y?Y.data:G}transform($){return new u8($({data:this.data,path:this.path,...this.input}),this.ctx)}hasCode($){return this.code===$}get propString(){return e0(this.path)}get expected(){if(this.input.expected)return this.input.expected;let $=this.meta?.expected??this.nodeConfig.expected;return typeof $==="function"?$(this.input):$}get actual(){if(this.input.actual)return this.input.actual;let $=this.meta?.actual??this.nodeConfig.actual;return typeof $==="function"?$(this.data):$}get problem(){if(this.input.problem)return this.input.problem;let $=this.meta?.problem??this.nodeConfig.problem;return typeof $==="function"?$(this):$}get message(){if(this.input.message)return this.input.message;let $=this.meta?.message??this.nodeConfig.message;return typeof $==="function"?$(this):$}get flat(){return this.hasCode("intersection")?[...this.errors]:[this]}toJSON(){return{data:this.data,path:this.path,...this.input,expected:this.expected,actual:this.actual,problem:this.problem,message:this.message}}toString(){return this.message}throw(){throw this}}class e4 extends DU{[f4]="errors";ctx;constructor($){super();this.ctx=$}byPath=Object.create(null);get flatByPath(){return L$(this.byPath,($,X)=>[$,X.flat])}get flatProblemsByPath(){return L$(this.byPath,($,X)=>[$,X.flat.map((Y)=>Y.problem)])}byAncestorPath=Object.create(null);count=0;mutable=this;throw(){throw this.toTraversalError()}toTraversalError(){return new SD(this)}add($){if(this.includes($))return;this._add($)}transform($){let X=new e4(this.ctx);for(let Y of this)X.add($(Y));return X}merge($){for(let X of $){if(this.includes(X))continue;this._add(new u8({...X,path:[...this.ctx.path,...X.path]},this.ctx))}}affectsPath($){if(this.length===0)return!1;return $.stringifyAncestors().some((X)=>(X in this.byPath))||$.stringify()in this.byAncestorPath}get summary(){return this.toString()}get issues(){return this}toJSON(){return[...this.map(($)=>$.toJSON())]}toString(){return this.join(`
161
+ `):this.body} }`}compile(){return new GT(...this.argNames,this.body)}}var $8=($)=>a4($,"object")||typeof $==="symbol"?F6($):p5($),BD=($,X=!1)=>{if(typeof $==="string"&&y8($))return`${X?"?":""}.${$}`;return KT(ob($),X)},ob=($)=>typeof $==="symbol"?F6($):JSON.stringify($),KT=($,X=!1)=>`${X?"?.":""}[${$}]`;class i5 extends FU{traversalKind;optimistic;constructor($){super("data","ctx");this.traversalKind=$.kind,this.optimistic=$.optimistic===!0}invoke($,X){let Y=X?.arg??this.data,z=typeof $==="string"?!0:this.requiresContextFor($),G=typeof $==="string"?$:$.id;if(z)return`${this.referenceToId(G,X)}(${Y}, ${this.ctx})`;return`${this.referenceToId(G,X)}(${Y})`}referenceToId($,X){let Y=X?.kind??this.traversalKind,z=`this.${$}${Y}`;return X?.bind?`${z}.bind(${X?.bind})`:z}requiresContextFor($){return this.traversalKind==="Apply"||$.allowsRequiresContext}initializeErrorCount(){return this.const("errorCount","ctx.currentErrorCount")}returnIfFail(){return this.if("ctx.currentErrorCount > errorCount",()=>this.return())}returnIfFailFast(){return this.if("ctx.failFast && ctx.currentErrorCount > errorCount",()=>this.return())}traverseKey($,X,Y){let z=this.requiresContextFor(Y);if(z)this.line(`${this.ctx}.path.push(${$})`);if(this.check(Y,{arg:X}),z)this.line(`${this.ctx}.path.pop()`);return this}check($,X){return this.traversalKind==="Allows"?this.if(`!${this.invoke($,X)}`,()=>this.return(!1)):this.line(this.invoke($,X))}}var MU=($)=>L$($,(X,Y)=>[X,o$(Y)?[...Y]:Y]),f4=d1("arkKind"),z$=($,X)=>$?.[f4]===X,X6=($)=>z$($,"root")||z$($,"constraint");var _T=["unit","proto","domain"],F2=["required","optional","index","sequence"],ID=["pattern","divisor","exactLength","max","min","maxLength","minLength","before","after"],LU=[...ID,...F2,"structure","predicate"],M2=["alias","union","morph","unit","intersection","proto","domain"],tb=[...M2,...LU],JU=L$(LU,($,X)=>[X,1]),qT=L$([...F2,"undeclared"],($,X)=>[X,1]),TT=L$(tb,($,X)=>[X,$]),L2=($)=>typeof $==="string"&&($ in TT);var J2=($)=>TT[$],AU=($)=>M2.slice(J2($)+1),GX$=[...AU("union"),"alias"],zX$=[...AU("morph"),"alias"],j1=($)=>{if(typeof $==="string"||typeof $==="boolean"||$===null)return $;if(typeof $==="number"){if(Number.isNaN($))return"NaN";if($===Number.POSITIVE_INFINITY)return"Infinity";if($===Number.NEGATIVE_INFINITY)return"-Infinity";return $}return $8($)},m8=($)=>{let X="{ ";for(let[Y,z]of Object.entries($))X+=`${Y}: ${$8(z)}, `;return X+" }"},A$=($)=>{let X=$;if(X.hasAssociatedError)X.defaults.expected??=(Y)=>("description"in Y)?Y.description:X.defaults.description(Y),X.defaults.actual??=(Y)=>J$(Y),X.defaults.problem??=(Y)=>`must be ${Y.expected}${Y.actual?` (was ${Y.actual})`:""}`,X.defaults.message??=(Y)=>{if(Y.path.length===0)return Y.problem;let z=`${Y.propString} ${Y.problem}`;if(z[0]==="[")return`value at ${z}`;return z};return X};class RT extends Error{name="ToJsonSchemaError";code;context;constructor($,X){super(J$(X,{quoteKeys:!1,indent:4}));this.code=$,this.context=X}hasCode($){return this.code===$}}var ab={dialect:"https://json-schema.org/draft/2020-12/schema",useRefs:!1,fallback:{arrayObject:($)=>Q6.throw("arrayObject",$),arrayPostfix:($)=>Q6.throw("arrayPostfix",$),defaultValue:($)=>Q6.throw("defaultValue",$),domain:($)=>Q6.throw("domain",$),morph:($)=>Q6.throw("morph",$),patternIntersection:($)=>Q6.throw("patternIntersection",$),predicate:($)=>Q6.throw("predicate",$),proto:($)=>Q6.throw("proto",$),symbolKey:($)=>Q6.throw("symbolKey",$),unit:($)=>Q6.throw("unit",$),date:($)=>Q6.throw("date",$)}},Q6={Error:RT,throw:(...$)=>{throw new Q6.Error(...$)},throwInternalOperandError:($,X)=>S$(`Unexpected JSON Schema input for ${$}: ${J$(X)}`),defaultConfig:ab};g.config??={};var r5=($,X)=>{if(!X)return $;let Y={...$},z;for(z in X){let G={...$.keywords};if(z==="keywords"){for(let U in X[z]){let W=X.keywords[U];if(W===void 0)continue;G[U]=typeof W==="string"?{description:W}:W}Y.keywords=G}else if(z==="toJsonSchema")Y[z]=xD($.toJsonSchema,X.toJsonSchema);else if(L2(z))Y[z]={...$[z],...X[z]};else Y[z]=X[z]}return Y},xD=($,X)=>{if(!$)return X??{};if(!X)return $;let Y={...$},z;for(z in X)if(z==="fallback")Y.fallback=sb($.fallback,X.fallback);else Y[z]=X[z];return Y},sb=($,X)=>{$=PT($),X=PT(X);let Y={},z;for(z in Q6.defaultConfig.fallback)Y[z]=X[z]??X.default??$[z]??$.default??Q6.defaultConfig.fallback[z];return Y},PT=($)=>typeof $==="function"?{default:$}:$??{};class u8 extends f5{[f4]="error";path;data;nodeConfig;input;ctx;constructor({prefixPath:$,relativePath:X,...Y},z){super();this.input=Y,this.ctx=z,aq(this,Y);let G=z.data;if(Y.code==="union")Y.errors=Y.errors.flatMap((W)=>{let Q=W.hasCode("union")?W.errors:[W];if(!$&&!X)return Q;return Q.map((Z)=>Z.transform((H)=>({...H,path:lq($,H.path,X)})))});this.nodeConfig=z.config[this.code];let U=[...Y.path??z.path];if(X)U.push(...X);if($)U.unshift(...$);this.path=new l5(...U),this.data="data"in Y?Y.data:G}transform($){return new u8($({data:this.data,path:this.path,...this.input}),this.ctx)}hasCode($){return this.code===$}get propString(){return e0(this.path)}get expected(){if(this.input.expected)return this.input.expected;let $=this.meta?.expected??this.nodeConfig.expected;return typeof $==="function"?$(this.input):$}get actual(){if(this.input.actual)return this.input.actual;let $=this.meta?.actual??this.nodeConfig.actual;return typeof $==="function"?$(this.data):$}get problem(){if(this.input.problem)return this.input.problem;let $=this.meta?.problem??this.nodeConfig.problem;return typeof $==="function"?$(this):$}get message(){if(this.input.message)return this.input.message;let $=this.meta?.message??this.nodeConfig.message;return typeof $==="function"?$(this):$}get flat(){return this.hasCode("intersection")?[...this.errors]:[this]}toJSON(){return{data:this.data,path:this.path,...this.input,expected:this.expected,actual:this.actual,problem:this.problem,message:this.message}}toString(){return this.message}throw(){throw this}}class e4 extends DU{[f4]="errors";ctx;constructor($){super();this.ctx=$}byPath=Object.create(null);get flatByPath(){return L$(this.byPath,($,X)=>[$,X.flat])}get flatProblemsByPath(){return L$(this.byPath,($,X)=>[$,X.flat.map((Y)=>Y.problem)])}byAncestorPath=Object.create(null);count=0;mutable=this;throw(){throw this.toTraversalError()}toTraversalError(){return new SD(this)}add($){if(this.includes($))return;this._add($)}transform($){let X=new e4(this.ctx);for(let Y of this)X.add($(Y));return X}merge($){for(let X of $){if(this.includes(X))continue;this._add(new u8({...X,path:[...this.ctx.path,...X.path]},this.ctx))}}affectsPath($){if(this.length===0)return!1;return $.stringifyAncestors().some((X)=>(X in this.byPath))||$.stringify()in this.byAncestorPath}get summary(){return this.toString()}get issues(){return this}toJSON(){return[...this.map(($)=>$.toJSON())]}toString(){return this.join(`
162
162
  `)}_add($){let X=this.byPath[$.propString];if(X){if(X.hasCode("union")&&X.errors.length===0)return;let Y=$.hasCode("union")&&$.errors.length===0?$:new u8({code:"intersection",errors:X.hasCode("intersection")?[...X.errors,$]:[X,$]},this.ctx),z=this.indexOf(X);this.mutable[z===-1?this.length:z]=Y,this.byPath[$.propString]=Y,this.addAncestorPaths($)}else this.byPath[$.propString]=$,this.addAncestorPaths($),this.mutable.push($);this.count++}addAncestorPaths($){for(let X of $.path.stringifyAncestors())this.byAncestorPath[X]=B$(this.byAncestorPath[X],$)}}class SD extends Error{name="TraversalError";constructor($){if($.length===1)super($.summary);else super(`
163
163
  `+$.map((X)=>` \u2022 ${eb(X)}`).join(`
164
164
  `));Object.defineProperty(this,"arkErrors",{value:$,enumerable:!1})}}var eb=($)=>$.toString().split(`
@@ -188,7 +188,7 @@ Right: ${X}`;var zh=A$({kind:"unit",hasAssociatedError:!0,keys:{unit:{preserveUn
188
188
  ${W},
189
189
  `;if(!Y.hasKind("union"))return Q;let Z=new i5({kind:"Allows",optimistic:!0}).indent();Y.compile(Z);let H=Z.write(`${Y.id}Optimistic`);return`${Q}${H},
190
190
  `},`{
191
- `)+"}");class jU{config;resolvedConfig;name;get[f4](){return"scope"}referencesById={};references=[];resolutions={};exportedNames=[];aliases={};resolved=!1;nodesByHash={};intrinsic;constructor($,X){if(this.config=r5(g.config,X),this.resolvedConfig=r5(g.resolvedConfig,X),this.name=this.resolvedConfig.name??`anonymousScope${Object.keys(wN).length}`,this.name in wN)f(`A Scope already named ${this.name} already exists`);wN[this.name]=this;let Y=Object.entries($).map((z)=>this.preparseOwnAliasEntry(...z));for(let[z,G]of Y){let U=z;if(z[0]==="#"){if(U=z.slice(1),U in this.aliases)f(KR(U));this.aliases[U]=G}else{if(U in this.aliases)f(KR(z));this.aliases[U]=G,this.exportedNames.push(U)}if(!z$(G,"module")&&!z$(G,"generic")&&!h8(G)){let W=this.preparseOwnDefinitionFormat(G,{alias:U});this.resolutions[U]=z$(W,"root")?this.bindReference(W):this.createParseContext(W).id}}_R??=this.node("union",{branches:["string","number","object","bigint","symbol",{unit:!0},{unit:!1},{unit:void 0},{unit:null}]},{prereduced:!0}),this.nodesByHash[_R.hash]=this.node("intersection",{},{prereduced:!0}),this.intrinsic=g.intrinsic?L$(g.intrinsic,(z,G)=>z.startsWith("json")?[]:[z,this.bindReference(G)]):{}}cacheGetter($,X){return Object.defineProperty(this,$,{value:X}),X}get internal(){return this}_json;get json(){if(!this._json)this.export();return this._json}defineSchema($){return $}generic=(...$)=>{let X=this;return(Y,z)=>new c8($,z?new KU(Y):Y,X,X,z??null)};units=($,X)=>{let Y=[];for(let G of $)if(!Y.includes(G))Y.push(G);let z=Y.map((G)=>this.node("unit",{unit:G},X));return this.node("union",z,{...X,prereduced:!0})};lazyResolutions=[];lazilyResolve($,X){let Y=this.node("alias",{reference:X??"synthetic",resolve:$},{prereduced:!0});if(!this.resolved)this.lazyResolutions.push(Y);return Y}schema=($,X)=>this.finalize(this.parseSchema($,X));parseSchema=($,X)=>this.node(a5($),$,X);preparseNode($,X,Y){let z=typeof $==="string"?$:a5(X,$);if(X6(X)&&X.kind===z)return X;if(z==="alias"&&!Y?.prereduced){let{reference:W}=G7.implementation.normalize(X,this);if(W.startsWith("$")){let Q=this.resolveRoot(W.slice(1));X=Q,z=Q.kind}}else if(z==="union"&&a4(X,"object")){let W=qh(X);if(W?.length===1)X=W[0],z=a5(X)}if(X6(X)&&X.kind===z)return X;let U=T2[z].normalize?.(X,this)??X;if(X6(U))return U.kind===z?U:Th(z,U.kind);return{...Y,$:this,kind:z,def:U,prefix:Y.alias??z}}bindReference($){let X;if(X6($))X=$.$===this?$:new $.constructor($.attachments,this);else X=$.$===this?$:new c8($.params,$.bodyDef,$.$,this,$.hkt);if(!this.resolved)Object.assign(this.referencesById,X.referencesById);return X}resolveRoot($){return this.maybeResolveRoot($)??f(NN($))}maybeResolveRoot($){let X=this.maybeResolve($);if(z$(X,"generic"))return;return X}maybeResolveSubalias($){return VN(this.aliases,$)??VN(this.ambient,$)}get ambient(){return g.ambient}maybeResolve($){let X=this.resolutions[$];if(X){if(typeof X!=="string")return this.bindReference(X);let z=h4[X];if(z$(z,"root"))return this.resolutions[$]=z;if(z$(z,"context")){if(z.phase==="resolving")return this.node("alias",{reference:`$${$}`},{prereduced:!0});if(z.phase==="resolved")return S$(`Unexpected resolved context for was uncached by its scope: ${J$(z)}`);z.phase="resolving";let G=this.bindReference(this.parseOwnDefinitionFormat(z.def,z));return z.phase="resolved",h4[G.id]=G,h4[z.id]=G,this.resolutions[$]=G}return S$(`Unexpected nodesById entry for ${X}: ${J$(z)}`)}let Y=this.aliases[$]??this.ambient?.[$];if(!Y)return this.maybeResolveSubalias($);if(Y=this.normalizeRootScopeValue(Y),z$(Y,"generic"))return this.resolutions[$]=this.bindReference(Y);if(z$(Y,"module")){if(!Y.root)f(jR($));return this.resolutions[$]=this.bindReference(Y.root)}return this.resolutions[$]=this.parse(Y,{alias:$})}createParseContext($){let X=$.id??nD($.prefix);return h4[X]=Object.assign($,{[f4]:"context",$:this,id:X,phase:"unresolved"})}traversal($){return new i1($,this.resolvedConfig)}import(...$){return new v2(L$(this.export(...$),(X,Y)=>[`#${X}`,Y]))}precompilation;_exportedResolutions;_exports;export(...$){if(!this._exports){this._exports={};for(let Y of this.exportedNames){let z=this.aliases[Y];this._exports[Y]=z$(z,"module")?ON(z,this):qR(this.maybeResolve(Y))}for(let Y of this.lazyResolutions)Y.resolution;if(this._exportedResolutions=CR(this,this._exports),this._json=vR(this._exportedResolutions),Object.assign(this.resolutions,this._exportedResolutions),this.references=Object.values(this.referencesById),!this.resolvedConfig.jitless){let Y=PR(this.references);this.precompilation=Y.write(TR,4),RR(this.references,Y)}this.resolved=!0}let X=$.length?$:this.exportedNames;return new v2(L$(X,(Y,z)=>[z,this._exports[z]]))}resolve($){return this.export()[$]}node=($,X,Y={})=>{let z=this.preparseNode($,X,Y);if(X6(z))return this.bindReference(z);let G=this.createParseContext(z),U=oD(G),W=this.bindReference(U);return h4[G.id]=W};parse=($,X={})=>this.finalize(this.parseDefinition($,X));parseDefinition($,X={}){if(z$($,"root"))return this.bindReference($);let Y=this.preparseOwnDefinitionFormat($,X);if(z$(Y,"root"))return this.bindReference(Y);let z=this.createParseContext(Y);h4[z.id]=z;let G=this.bindReference(this.parseOwnDefinitionFormat($,z));if(G.isCyclic)G=oT(G,z.id);return h4[z.id]=G,G}finalize($){if(qR($),!$.precompilation&&!this.resolvedConfig.jitless)Rh($.references);return $}}class DN extends jU{parseOwnDefinitionFormat($,X){return oD(X)}preparseOwnDefinitionFormat($,X){return this.preparseNode(a5($),$,X)}preparseOwnAliasEntry($,X){return[$,X]}normalizeRootScopeValue($){return $}}var qR=($)=>{let X=$.references.filter((Y)=>Y.hasKind("alias"));for(let Y of X){Object.assign(Y.referencesById,Y.resolution.referencesById);for(let z of $.references)if(Y.id in z.referencesById)Object.assign(z.referencesById,Y.referencesById)}return $},vR=($)=>L$($,(X,Y)=>[X,z$(Y,"root")||z$(Y,"generic")?Y.json:z$(Y,"module")?vR(Y):S$(`Unexpected resolution ${J$(Y)}`)]),VN=($,X)=>{let Y=X.indexOf(".");if(Y===-1)return;let z=X.slice(0,Y),G=$[z];if(G===void 0)return;if(!z$(G,"module"))return f(Ph(z));let U=X.slice(Y+1),W=G[U];if(W===void 0)return VN(G,U);if(z$(W,"root")||z$(W,"generic"))return W;if(z$(W,"module"))return W.root??f(jR(X));S$(`Unexpected resolution for alias '${X}': ${J$(W)}`)},BU=($,X)=>new DN($,X),W7=new DN({});var CR=($,X)=>{let Y={};for(let z in X){let G=X[z];if(z$(G,"module")){let U=CR($,G),W=L$(U,(Q,Z)=>[`${z}.${Q}`,Z]);Object.assign(Y,W)}else if(z$(G,"root")||z$(G,"generic"))Y[z]=G;else S$(`Unexpected scope resolution ${J$(G)}`)}return Y},NN=($)=>`'${$}' is unresolvable`,Ph=($)=>`'${$}' must reference a module to be accessed using dot syntax`,jR=($)=>`Reference to submodule '${$}' must specify an alias`;W7.export();var{schema:u$,node:C2,defineSchema:w5$,generic:x1}=W7;var EN="^(?:0|[1-9]\\d*)$",vh=new RegExp(EN),N5$=F6(vh);var BR=BU({bigint:"bigint",boolean:[{unit:!1},{unit:!0}],false:{unit:!1},never:[],null:{unit:null},number:"number",object:"object",string:"string",symbol:"symbol",true:{unit:!0},unknown:{},undefined:{unit:void 0},Array,Date},{prereducedAliases:!0}).export();g.intrinsic={...BR};var IR=BU({integer:{domain:"number",divisor:1},lengthBoundable:["string",Array],key:["string","symbol"],nonNegativeIntegerString:{domain:"string",pattern:EN}},{prereducedAliases:!0}).export();Object.assign(g.intrinsic,IR);var Ch=BU({jsonPrimitive:["string","number",{unit:!0},{unit:!1},{unit:null}],jsonObject:{domain:"object",index:{signature:"string",value:"$jsonData"}},jsonData:["$jsonPrimitive","$jsonObject"]},{prereducedAliases:!0}).export(),O$={...BR,...IR,...Ch,emptyStructure:C2("structure",{},{prereduced:!0})};g.intrinsic={...O$};var SR=($)=>typeof $==="string"&&$[0]==="d"&&($[1]==="'"||$[1]==='"')&&$.at(-1)===$[1],xR=($)=>$.toString()!=="Invalid Date",kR=($)=>$.slice(2,-1),FN=($)=>`'${$}' could not be parsed by the Date constructor`,bR=($,X)=>jh($,X),jh=($,X)=>{let Y=new Date($);if(xR(Y))return Y;let z=DT($);if(z!==void 0){let G=new Date(z);if(xR(G))return G}return X?f(X===!0?FN($):X):void 0};var MN=($,X)=>{let Y=$.scanner.shiftUntil(Bh[hR[X]]);if($.scanner.lookahead==="")return $.error(xh(Y,X));if($.scanner.shift(),X==="/"){try{new RegExp(Y)}catch(z){f(String(z))}$.root=$.ctx.$.node("intersection",{domain:"string",pattern:Y},{prereduced:!0})}else if(c6(X,LN))$.root=$.ctx.$.node("unit",{unit:Y});else{let z=bR(Y,FN(Y));$.root=$.ctx.$.node("unit",{meta:Y,unit:z})}},LN={"'":1,'"':1},fR={"/":1,"'":1,'"':1},hR={"d'":"'",'d"':'"',"'":"'",'"':'"',"/":"/"},Bh={"'":($)=>$.lookahead==="'",'"':($)=>$.lookahead==='"',"/":($)=>$.lookahead==="/"},Ih={'"':"double-quote","'":"single-quote","/":"forward slash"},xh=($,X)=>`${X}${$} requires a closing ${Ih[hR[X]]}`;var gR=($)=>`Private type references should not include '#'. Use '${$}' instead.`,IU="Optional definitions like 'string?' are only valid as properties in an object or tuple",xU="Defaultable definitions like 'number = 0' are only valid as properties in an object or tuple";var yR={">":!0,">=":!0},mR={"<":!0,"<=":!0};var j2={"<":">",">":"<","<=":">=",">=":"<=","==":"=="},uR=($)=>`Unmatched )${$===""?"":` before ${$}`}`,SU=($)=>`Missing ${$}`,cR=($,X)=>`Left bounds are only valid when paired with right bounds (try ...${X}${$})`,kU=($)=>`Left-bounded expressions must specify their limits using < or <= (was ${$})`,pR=($,X,Y,z)=>`An expression may have at most one left bound (parsed ${$}${j2[X]}, ${Y}${j2[z]})`;var dR=($,X,Y)=>lR($,X,Y,[]),lR=($,X,Y,z)=>{let G=Y.parseUntilFinalizer();if(z.push(G.root),G.finalizer===">"){if(z.length!==X.params.length)return Y.error(JN($,X.names,z.map((U)=>U.expression)));return z}if(G.finalizer===",")return lR($,X,Y,z);return G.error(SU(">"))},JN=($,X,Y)=>`${$}<${X.join(", ")}> requires exactly ${X.length} args (got ${Y.length}${Y.length===0?"":`: ${Y.join(", ")}`})`;var AN=($)=>{let X=$.scanner.shiftUntilNextTerminator();if(X==="keyof")$.addPrefix("keyof");else $.root=kh($,X)},Sh=($,X,Y)=>{if(Y.scanner.shiftUntilNonWhitespace(),Y.scanner.shift()!=="<")return Y.error(JN($,X.names,[]));let G=dR($,X,Y);return X(...G)},kh=($,X)=>bh($,X)??fh($,X)??$.error(X===""?$.scanner.lookahead==="#"?gR($.shiftedByOne().scanner.shiftUntilNextTerminator()):KN($):NN(X)),bh=($,X)=>{if($.ctx.args?.[X]){let z=$.ctx.args[X];if(typeof z!=="string")return z;return $.ctx.$.node("alias",{reference:z},{prereduced:!0})}let Y=$.ctx.$.maybeResolve(X);if(z$(Y,"root"))return Y;if(Y===void 0)return;if(z$(Y,"generic"))return Sh(X,Y,$);return f(`Unexpected resolution ${J$(Y)}`)},fh=($,X)=>{let Y=NT(X);if(Y!==void 0)return $.ctx.$.node("unit",{unit:Y});let z=FT(X);if(z!==void 0)return $.ctx.$.node("unit",{unit:z})},KN=($)=>{let X=$.previousOperator();return X?_N(X,$.scanner.unscanned):hh($.scanner.unscanned)},_N=($,X="")=>`Token '${$}' requires a right operand${X?` before '${X}'`:""}`,hh=($)=>`Expected an expression${$?` before '${$}'`:""}`;var qN=($)=>$.scanner.lookahead===""?$.error(KN($)):$.scanner.lookahead==="("?$.shiftedByOne().reduceGroupOpen():$.scanner.lookaheadIsIn(fR)?MN($,$.scanner.shift()):$.scanner.lookaheadIsIn(g8)?qN($.shiftedByOne()):$.scanner.lookahead==="d"?$.scanner.nextLookahead in LN?MN($,`${$.scanner.shift()}${$.scanner.shift()}`):AN($):AN($);class Y8 extends CD{shiftUntilNextTerminator(){return this.shiftUntilNonWhitespace(),this.shiftUntil(()=>(this.lookahead in Y8.terminatingChars))}static terminatingChars={"<":1,">":1,"=":1,"|":1,"&":1,")":1,"[":1,"%":1,",":1,":":1,"?":1,"#":1,...g8};static finalizingLookaheads={">":1,",":1,"":1,"=":1,"?":1};static lookaheadIsFinalizing=($,X)=>$===">"?X[0]==="="?X[1]==="=":X.trimStart()===""||c6(X.trimStart()[0],Y8.terminatingChars):$==="="?X[0]!=="=":$===","||$==="?"}var rR=($,X)=>{let Y=gh($,X);if($.root.hasKind("unit")){if(typeof $.root.unit==="number"){$.reduceLeftBound($.root.unit,Y),$.unsetRoot();return}if($.root.unit instanceof Date){let z=`d'${$.root.description??$.root.unit.toISOString()}'`;$.unsetRoot(),$.reduceLeftBound(z,Y);return}}return mh($,Y)},nR={"<":1,">":1,"=":1},gh=($,X)=>$.scanner.lookaheadIs("=")?`${X}${$.scanner.shift()}`:X;var iR=($,X,Y,z)=>{if(Y.extends(g.intrinsic.number)){if(typeof X!=="number")return f(TN($,X,z));return $==="=="?["min","max"]:$[0]===">"?["min"]:["max"]}if(Y.extends(g.intrinsic.lengthBoundable)){if(typeof X!=="number")return f(TN($,X,z));return $==="=="?["exactLength"]:$[0]===">"?["minLength"]:["maxLength"]}if(Y.extends(g.intrinsic.Date))return $==="=="?["after","before"]:$[0]===">"?["after"]:["before"];return f(fT(Y.expression))},yh=($)=>({rule:SR($.limit)?kR($.limit):$.limit,exclusive:$.comparator.length===1}),mh=($,X)=>{let Y=$.unsetRoot(),z=$.scanner.location;$.parseOperand();let G=$.unsetRoot(),U=$.scanner.sliceChars(z,$.scanner.location);if($.root=Y,!G.hasKind("unit")||typeof G.unit!=="number"&&!(G.unit instanceof Date))return $.error(TN(X,U,"right"));let W=G.unit,Q=X.length===1,Z=iR(X,typeof W==="number"?W:U,Y,"right");for(let O of Z)$.constrainRoot(O,X==="=="?{rule:W}:{rule:W,exclusive:Q});if(!$.branches.leftBound)return;if(!c6(X,mR))return $.error(kU(X));let H=iR($.branches.leftBound.comparator,$.branches.leftBound.limit,Y,"left");$.constrainRoot(H[0],yh($.branches.leftBound)),$.branches.leftBound=null},TN=($,X,Y)=>`Comparator ${Y==="left"?j2[$]:$} must be ${Y==="left"?"preceded":"followed"} by a corresponding literal (was ${X})`;var oR=($)=>{$.scanner.shiftUntilNonWhitespace();let X=$.scanner.shiftUntilNextTerminator();$.root=$.root.brand(X)};var aR=($)=>{let X=$.scanner.shiftUntilNextTerminator(),Y=ET(X,{errorOnFail:tR(X)});if(Y===0)$.error(tR(0));$.root=$.root.constrain("divisor",Y)},tR=($)=>`% operator must be followed by a non-zero integer literal (was ${$})`;var RN=($)=>{let X=$.scanner.shift();return X===""?$.finalize(""):X==="["?$.scanner.shift()==="]"?$.setRoot($.root.array()):$.error(uh):X==="|"?$.scanner.lookahead===">"?$.shiftedByOne().pushRootToBranch("|>"):$.pushRootToBranch(X):X==="&"?$.pushRootToBranch(X):X===")"?$.finalizeGroup():Y8.lookaheadIsFinalizing(X,$.scanner.unscanned)?$.finalize(X):c6(X,nR)?rR($,X):X==="%"?aR($):X==="#"?oR($):(X in g8)?RN($):$.error(bU(X))},bU=($,X="")=>`'${$}' is not allowed here${X&&` (should be ${X})`}`,uh="Missing expected ']'";var sR=($)=>{let X=$.unsetRoot();$.parseOperand();let Y=$.unsetRoot();if(!Y.hasKind("unit"))return $.error(ch(Y.expression));let z=Y.unit instanceof Date?()=>new Date(Y.unit):Y.unit;return[X,"=",z]},ch=($)=>`Default value '${$}' must a literal value`;var PN=($,X)=>{let Y=X.$.maybeResolveRoot($);if(Y)return Y;if($.endsWith("[]")){let U=X.$.maybeResolveRoot($.slice(0,-2));if(U)return U.array()}let z=new B2(new Y8($),X),G=ph(z);if(z.finalizer===">")f(bU(">"));return G},ph=($)=>{$.parseOperand();let X=Q7($).root;if(!X)return S$(`Root was unexpectedly unset after parsing string '${$.scanner.scanned}'`);if($.finalizer==="=")X=sR($);else if($.finalizer==="?")X=[X,"?"];if($.scanner.shiftUntilNonWhitespace(),$.scanner.lookahead)f(bU($.scanner.lookahead));return X},Q7=($)=>{while($.finalizer===void 0)dh($);return $},dh=($)=>$.hasRoot()?$.parseOperator():$.parseOperand();class B2{root;branches={prefixes:[],leftBound:null,intersection:null,union:null,pipe:null};finalizer;groups=[];scanner;ctx;constructor($,X){this.scanner=$,this.ctx=X}error($){return f($)}hasRoot(){return this.root!==void 0}setRoot($){this.root=$}unsetRoot(){let $=this.root;return this.root=void 0,$}constrainRoot(...$){this.root=this.root.constrain($[0],$[1])}finalize($){if(this.groups.length)return this.error(SU(")"));this.finalizeBranches(),this.finalizer=$}reduceLeftBound($,X){let Y=j2[X];if(!c6(Y,yR))return this.error(kU(X));if(this.branches.leftBound)return this.error(pR(this.branches.leftBound.limit,this.branches.leftBound.comparator,$,Y));this.branches.leftBound={comparator:Y,limit:$}}finalizeBranches(){if(this.assertRangeUnset(),this.branches.pipe){this.pushRootToBranch("|>"),this.root=this.branches.pipe;return}if(this.branches.union){this.pushRootToBranch("|"),this.root=this.branches.union;return}if(this.branches.intersection){this.pushRootToBranch("&"),this.root=this.branches.intersection;return}this.applyPrefixes()}finalizeGroup(){this.finalizeBranches();let $=this.groups.pop();if(!$)return this.error(uR(this.scanner.unscanned));this.branches=$}addPrefix($){this.branches.prefixes.push($)}applyPrefixes(){while(this.branches.prefixes.length){let $=this.branches.prefixes.pop();this.root=$==="keyof"?this.root.keyof():S$(`Unexpected prefix '${$}'`)}}pushRootToBranch($){this.assertRangeUnset(),this.applyPrefixes();let X=this.root;if(this.root=void 0,this.branches.intersection=this.branches.intersection?.rawAnd(X)??X,$==="&")return;if(this.branches.union=this.branches.union?.rawOr(this.branches.intersection)??this.branches.intersection,this.branches.intersection=null,$==="|")return;this.branches.pipe=this.branches.pipe?.rawPipeOnce(this.branches.union)??this.branches.union,this.branches.union=null}parseUntilFinalizer(){return Q7(new B2(this.scanner,this.ctx))}parseOperator(){return RN(this)}parseOperand(){return qN(this)}assertRangeUnset(){if(this.branches.leftBound)return this.error(cR(this.branches.leftBound.limit,this.branches.leftBound.comparator))}reduceGroupOpen(){this.groups.push(this.branches),this.branches={prefixes:[],leftBound:null,union:null,intersection:null,pipe:null}}previousOperator(){return this.branches.leftBound?.comparator??this.branches.prefixes.at(-1)??(this.branches.intersection?"&":this.branches.union?"|":this.branches.pipe?"|>":void 0)}shiftedByOne(){return this.scanner.shift(),this}}var lh="An empty string is not a valid generic parameter name",fU=($,X,Y)=>{$.shiftUntilNonWhitespace();let z=$.shiftUntilNextTerminator();if(z===""){if($.lookahead===""&&X.length)return X;return f(lh)}return $.shiftUntilNonWhitespace(),ih($,z,X,Y)},eR="extends ",ih=($,X,Y,z)=>{if($.shiftUntilNonWhitespace(),$.unscanned.startsWith(eR))$.jumpForward(eR.length);else{if($.lookahead===",")$.shift();return Y.push(X),fU($,Y,z)}let G=Q7(new B2($,z));return Y.push([X,G.root]),fU($,Y,z)};class vN extends l1{$;constructor($){super((...X)=>new Z7($)(...X),{bind:$});this.$=$}in($){return new Z7(this.$,$===void 0?void 0:this.$.parse($))}at($,X){return new Z7(this.$).at($,X)}case($,X){return new Z7(this.$).case($,X)}}class Z7 extends l1{$;in;key;branches=[];constructor($,X){super((Y)=>this.caseEntries(Object.entries(Y).map(([z,G])=>z==="default"?[z,G]:[this.$.parse(z),G])));this.$=$,this.in=X}at($,X){if(this.key)f(nh);if(this.branches.length)f(rh);return this.key=$,X?this.match(X):this}case($,X){return this.caseEntry(this.$.parse($),X)}caseEntry($,X){let z=(this.key?this.$.parse({[this.key]:$}):$).pipe(X);return this.branches.push(z),this}match($){return this($)}strings($){return this.caseEntries(Object.entries($).map(([X,Y])=>X==="default"?[X,Y]:[this.$.node("unit",{unit:X}),Y]))}caseEntries($){for(let X=0;X<$.length;X++){let[Y,z]=$[X];if(Y==="default"){if(X!==$.length-1)f("default may only be specified as the last key of a switch definition");return this.default(z)}if(typeof z!=="function")return f(`Value for case "${Y}" must be a function (was ${u6(z)})`);this.caseEntry(Y,z)}return this}default($){if(typeof $==="function")this.case(O$.unknown,$);let X={branches:this.branches,ordered:!0};if($==="never"||$==="assert")X.meta={onFail:$P};let Y=this.$.node("union",X);if(!this.in)return this.$.finalize(Y);let z=this.in.pipe(Y);if($==="never"||$==="assert")z=z.configureReferences({onFail:$P},"self");return this.$.finalize(z)}}var $P=($)=>$.throw(),rh="A key matcher must be specified before the first case i.e. match.at('foo') or match.in<object>().at('bar')",nh="At most one key matcher may be specified per expression";var hU=($,X)=>{if(o$($)){if($[1]==="=")return[X.$.parseOwnDefinitionFormat($[0],X),"=",$[2]];if($[1]==="?")return[X.$.parseOwnDefinitionFormat($[0],X),"?"]}return gU($,X)},XP="Only required keys may make their values optional, e.g. { [mySymbol]: ['number', '?'] }",YP="Only required keys may specify default values, e.g. { value: 'number = 0' }";var GP=($,X)=>{let Y,z={},G=uX($);for(let[W,Q]of G){let Z=ah(W);if(Z.kind==="spread"){if(!F0(z))return f(th);let D=X.$.parseOwnDefinitionFormat(Q,X);if(D.equals(O$.object))continue;if(!D.hasKind("intersection")||!D.basis?.equals(O$.object))return f(sh(D.expression));Y=D.structure;continue}if(Z.kind==="undeclared"){if(Q!=="reject"&&Q!=="delete"&&Q!=="ignore")f(oh(Q));z.undeclared=Q;continue}let H=hU(Q,X),O=Z;if(Z.kind==="required"){if(!o$(H))CN(z,"required",{key:Z.normalized,value:H},X);else CN(z,"optional",H[1]==="="?{key:Z.normalized,value:H[0],default:H[2]}:{key:Z.normalized,value:H[0]},X);continue}if(o$(H)){if(H[1]==="?")f(XP);if(H[1]==="=")f(YP)}if(Z.kind==="optional"){CN(z,"optional",{key:Z.normalized,value:H},X);continue}let w=X.$.parseOwnDefinitionFormat(O.normalized,X),V=CU(w,H,X.$);if(V.index)z.index=B$(z.index,V.index);if(V.required)z.required=B$(z.required,V.required)}let U=X.$.node("structure",z);return X.$.parseSchema({domain:"object",structure:Y?.merge(U)??U})},CN=($,X,Y,z)=>{$[X]=B$($[X],z.$.node(X,Y))},oh=($)=>`Value of '+' key must be 'reject', 'delete', or 'ignore' (was ${J$($)})`,th="Spread operator may only be used as the first key in an object",ah=($)=>typeof $==="symbol"?{kind:"required",normalized:$}:$.at(-1)==="?"?$.at(-2)===m5?{kind:"required",normalized:`${$.slice(0,-2)}?`}:{kind:"optional",normalized:$.slice(0,-1)}:$[0]==="["&&$.at(-1)==="]"?{kind:"index",normalized:$.slice(1,-1)}:$[0]===m5&&$[1]==="["&&$.at(-1)==="]"?{kind:"required",normalized:$.slice(1)}:$==="..."?{kind:"spread"}:$==="+"?{kind:"undeclared"}:{kind:"required",normalized:$==="\\..."?"...":$==="\\+"?"+":$},sh=($)=>`Spread operand must resolve to an object literal type (was ${$})`;var UP=($,X)=>Zg($)?HP[$[0]]($,X):Wg($)?ZP[$[1]]($,X):null,eh=($,X)=>X.$.parseOwnDefinitionFormat($[1],X).keyof(),jN=($,X)=>{if($[2]===void 0)return f(_N($[1],""));let Y=X.$.parseOwnDefinitionFormat($[0],X),z=X.$.parseOwnDefinitionFormat($[2],X);if($[1]==="|")return X.$.node("union",{branches:[Y,z]});let G=$[1]==="&"?X1(Y,z,X.$):t5(Y,z,X.$);if(G instanceof t)return G.throw();return G},$g=($,X)=>X.$.parseOwnDefinitionFormat($[0],X).array(),Xg=($,X)=>{if(typeof $[2]!=="function")return f(WP("=>",$[2]));return X.$.parseOwnDefinitionFormat($[0],X).pipe($[2])},WP=($,X)=>`${$===":"?"Narrow":"Morph"} expression requires a function following '${$}' (was ${typeof X})`,Yg=($,X)=>{if(typeof $[2]!=="function")return f(WP(":",$[2]));return X.$.parseOwnDefinitionFormat($[0],X).constrain("predicate",$[2])},Gg=($,X)=>X.$.parseOwnDefinitionFormat($[0],X).configureReferences($[2],"shallow"),QP=($)=>$,zg=QP({"[]":$g,"?":()=>f(IU)}),Ug=QP({"|":jN,"&":jN,":":Yg,"=>":Xg,"|>":jN,"@":Gg,"=":()=>f(xU)}),ZP={...zg,...Ug},Wg=($)=>ZP[$[1]]!==void 0,Qg=($)=>$,HP=Qg({keyof:eh,instanceof:($,X)=>{if(typeof $[1]!=="function")return f(zP(g5($[1])));let Y=$.slice(1).map((z)=>typeof z==="function"?X.$.node("proto",{proto:z}):f(zP(g5(z))));return Y.length===1?Y[0]:X.$.node("union",{branches:Y})},"===":($,X)=>X.$.units($.slice(1))}),Zg=($)=>HP[$[0]]!==void 0,zP=($)=>`Expected a constructor following 'instanceof' operator (was ${$})`;var VP=($,X)=>{let Y=[{}],z=0;while(z<$.length){let G=!1;if($[z]==="..."&&z<$.length-1)G=!0,z++;let U=hU($[z],X),[W,Q,Z]=!o$(U)?[U]:U;if(z++,G){if(!W.extends(g.intrinsic.Array))return f(wg(W.expression));Y=Y.flatMap((H)=>W.distribute((O)=>Og(MU(H),O)))}else Y=Y.map((H)=>{if(Q==="?")return DP(H,W);if(Q==="=")return Hg(H,W,Z);return BN(H,W)})}return X.$.parseSchema(Y.map((G)=>F0(G)?{proto:Array,exactLength:0}:{proto:Array,sequence:G}))},BN=($,X)=>{if($.defaultables||$.optionals)return f($.variadic?QN:Vg);if($.variadic)$.postfix=B$($.postfix,X);else $.prefix=B$($.prefix,X);return $},DP=($,X)=>{if($.variadic)return f(NP);return $.optionals=B$($.optionals,X),$},Hg=($,X,Y)=>{if($.variadic)return f(NP);if($.optionals)return f(Dg);return $.defaultables=B$($.defaultables,[[X,Y]]),$},OP=($,X)=>{if($.postfix)f(wP);if($.variadic){if(!$.variadic.equals(X))f(wP)}else $.variadic=X.internal;return $},Og=($,X)=>{let Y=X.select({method:"find",kind:"sequence"});if(!Y)return OP($,g.intrinsic.unknown);if(Y.prefix)for(let z of Y.prefix)BN($,z);if(Y.optionals)for(let z of Y.optionals)DP($,z);if(Y.variadic)OP($,Y.variadic);if(Y.postfix)for(let z of Y.postfix)BN($,z);return $},wg=($)=>`Spread element must be an array (was ${$})`,wP="A tuple may have at most one variadic element",Vg="A required element may not follow an optional element",NP="An optional element may not follow a variadic element";var Dg="A defaultable element may not follow an optional element without a default";var Ng={},gU=($,X)=>{if(typeof $==="string"){if(X.args&&Object.keys(X.args).some((z)=>$.includes(z)))return PN($,X);let Y=Ng[X.$.name]??={};return Y[$]??=PN($,X)}return a4($,"object")?Eg($,X):f(IN(u6($)))},Eg=($,X)=>{let Y=h5($);switch(Y){case void 0:if(z$($,"root"))return $;return GP($,X);case"Array":return Fg($,X);case"RegExp":return X.$.node("intersection",{domain:"string",pattern:$},{prereduced:!0});case"Function":{let z=h8($)?$():$;if(z$(z,"root"))return z;return f(IN("Function"))}default:return f(IN(Y??J$($)))}},Fg=($,X)=>UP($,X)??VP($,X),IN=($)=>`Type definitions must be strings or objects (was ${$})`;class xN extends l1{constructor($){let X=Object.assign({errors:e4,hkt:V4,$,raw:$.parse,module:$.constructor.module,scope:$.constructor.scope,define:$.define,match:$.match,generic:$.generic,schema:$.schema,keywords:$.ambient,unit:$.unit,enumerated:$.enumerated,instanceOf:$.instanceOf,valueOf:$.valueOf,or:$.or,and:$.and,merge:$.merge,pipe:$.pipe},$.ambientAttachments);super((...Y)=>{if(Y.length===1)return $.parse(Y[0]);if(Y.length===2&&typeof Y[0]==="string"&&Y[0][0]==="<"&&Y[0].at(-1)===">"){let z=Y[0].slice(1,-1),G=$.parseGenericParams(z,{});return new c8(G,Y[1],$,$,null)}return $.parse(Y)},{bind:$,attach:X})}}var I2=g;class yU extends jU{get ambientAttachments(){if(!I2.typeAttachments)return;return this.cacheGetter("ambientAttachments",L$(I2.typeAttachments,($,X)=>[$,this.bindReference(X)]))}preparseOwnAliasEntry($,X){let Y=$.indexOf("<");if(Y===-1){if(z$(X,"module")||z$(X,"generic"))return[$,X];let U=this.name==="ark"?$:$==="root"?this.name:`${this.name}.${$}`,W=this.resolvedConfig.keywords?.[U];if(W)X=[X,"@",W];return[$,X]}if($.at(-1)!==">")f("'>' must be the last character of a generic declaration in a scope");let z=$.slice(0,Y),G=$.slice(Y+1,-1);return[z,()=>{let U=this.parseGenericParams(G,{alias:z});return ST(U,X,this)}]}parseGenericParams($,X){return fU(new Y8($),[],this.createParseContext({...X,def:$,prefix:"generic"}))}normalizeRootScopeValue($){if(h8($)&&!z$($,"generic"))return $();return $}preparseOwnDefinitionFormat($,X){return{...X,def:$,prefix:X.alias??"type"}}parseOwnDefinitionFormat($,X){if(!(X.alias&&(X.alias in this.aliases))&&!X.args)X.args={this:X.id};let z=gU($,X);if(o$(z)){if(z[1]==="=")return f(xU);if(z[1]==="?")return f(IU)}return z}unit=($)=>this.units([$]);valueOf=($)=>this.units(eq($));enumerated=(...$)=>this.units($);instanceOf=($)=>this.node("proto",{proto:$},{prereduced:!0});or=(...$)=>this.schema($.map((X)=>this.parse(X)));and=(...$)=>$.reduce((X,Y)=>X.and(this.parse(Y)),this.intrinsic.unknown);merge=(...$)=>$.reduce((X,Y)=>X.merge(this.parse(Y)),this.intrinsic.object);pipe=(...$)=>this.intrinsic.unknown.pipe(...$);match=new vN(this);declare=()=>({type:this.type});define($){return $}type=new xN(this);static scope=($,X={})=>new yU($,X);static module=($,X={})=>this.scope($,X).export()}var SN=Object.assign(yU.scope,{define:($)=>$}),j$=yU;class EP extends V4{description='merge an object\'s properties onto another like `Merge(User, { isAdmin: "true" })`'}var Mg=x1(["base",O$.object],["props",O$.object])(($)=>$.base.merge($.props),EP),FP=j$.module({Key:O$.key,Merge:Mg});class MP extends V4{}var Lg=x1("element")(($)=>{let X=$.element.exclude(O$.Array),Y=X.array();return X.rawOr(Y).pipe(f8).distribute((z)=>z.assertHasKind("morph").declareOut(Y),u$)},MP),LP=j$.module({root:O$.Array,readonly:"root",index:O$.nonNegativeIntegerString,liftFrom:Lg},{name:"Array"});var kN=u$(["string",pX.FileConstructor]),Jg=kN.rawOr(kN.array()),JP=u$({meta:"an object representing parsed form data",domain:"object",index:{signature:"string",value:Jg}}),AP=j$.module({root:["instanceof",FormData],value:kN,parsed:JP,parse:u$({in:FormData,morphs:($)=>{let X={};for(let[Y,z]of $)if(Y in X){let G=X[Y];if(typeof G==="string"||G instanceof pX.FileConstructor)X[Y]=[G,z];else G.push(z)}else X[Y]=z;return X},declaredOut:JP})},{name:"FormData"});var KP=j$.module({Int8:["instanceof",Int8Array],Uint8:["instanceof",Uint8Array],Uint8Clamped:["instanceof",Uint8ClampedArray],Int16:["instanceof",Int16Array],Uint16:["instanceof",Uint16Array],Int32:["instanceof",Int32Array],Uint32:["instanceof",Uint32Array],Float32:["instanceof",Float32Array],Float64:["instanceof",Float64Array],BigInt64:["instanceof",BigInt64Array],BigUint64:["instanceof",BigUint64Array]},{name:"TypedArray"});var Ag={Boolean:1,Number:1,String:1},_P=j$.module({...L$({...AD,..._D},($,X)=>($ in Ag)?[]:[$,["instanceof",X]]),Array:LP,TypedArray:KP,FormData:AP});var Kg=u$({domain:{domain:"number",meta:"a number representing a Unix timestamp"},divisor:{rule:1,meta:"an integer representing a Unix timestamp"},min:{rule:-8640000000000000,meta:"a Unix timestamp after -8640000000000000"},max:{rule:8640000000000000,meta:"a Unix timestamp before 8640000000000000"},meta:"an integer representing a safe Unix timestamp"}),_g=u$({domain:"number",divisor:1}),mU=j$.module({root:O$.number,integer:_g,epoch:Kg,safe:u$({domain:{domain:"number",numberAllowsNaN:!1},min:Number.MIN_SAFE_INTEGER,max:Number.MAX_SAFE_INTEGER}),NaN:["===",Number.NaN],Infinity:["===",Number.POSITIVE_INFINITY],NegativeInfinity:["===",Number.NEGATIVE_INFINITY]},{name:"number"});var Z6=($,X,Y)=>{let z={domain:"string",pattern:{rule:$.source,flags:$.flags,meta:X}};if(Y)z.meta={format:Y};return C2("intersection",z)},qP=Z6(u5,"a well-formed integer string"),bP=j$.module({root:qP,parse:u$({in:qP,morphs:($,X)=>{let Y=Number.parseInt($);return Number.isSafeInteger(Y)?Y:X.error("an integer in the range Number.MIN_SAFE_INTEGER to Number.MAX_SAFE_INTEGER")},declaredOut:O$.integer})},{name:"string.integer"}),qg=Z6(/^[\dA-Fa-f]+$/,"hex characters only"),Tg=j$.module({root:Z6(/^(?:[\d+/A-Za-z]{4})*(?:[\d+/A-Za-z]{2}==|[\d+/A-Za-z]{3}=)?$/,"base64-encoded"),url:Z6(/^(?:[\w-]{4})*(?:[\w-]{2}(?:==|%3D%3D)?|[\w-]{3}(?:=|%3D)?)?$/,"base64url-encoded")},{name:"string.base64"}),TP=Z6(/^[A-Z].*$/,"capitalized"),Rg=j$.module({root:u$({in:"string",morphs:($)=>$.charAt(0).toUpperCase()+$.slice(1),declaredOut:TP}),preformatted:TP},{name:"string.capitalize"}),Pg=($)=>{let X=$.replaceAll(/[ -]+/g,""),Y=0,z,G,U=!1;for(let W=X.length-1;W>=0;W--){if(z=X.substring(W,W+1),G=Number.parseInt(z,10),U)G*=2,Y+=G>=10?G%10+1:G;else Y+=G;U=!U}return!!(Y%10===0?X:!1)},vg=/^(?:4\d{12}(?:\d{3,6})?|5[1-5]\d{14}|(222[1-9]|22[3-9]\d|2[3-6]\d{2}|27[01]\d|2720)\d{12}|6(?:011|5\d\d)\d{12,15}|3[47]\d{13}|3(?:0[0-5]|[68]\d)\d{11}|(?:2131|1800|35\d{3})\d{11}|6[27]\d{14}|^(81\d{14,17}))$/,Cg=u$({domain:"string",pattern:{meta:"a credit card number",rule:vg.source},predicate:{meta:"a credit card number",predicate:Pg}});var jg=/^([+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-3])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))(T((([01]\d|2[0-3])((:?)[0-5]\d)?|24:?00)([,.]\d+(?!:))?)?(\17[0-5]\d([,.]\d+)?)?([Zz]|([+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/;var Bg=($)=>!Number.isNaN(new Date($).valueOf()),RP=u$({domain:"string",predicate:{meta:"a parsable date",predicate:Bg}}).assertHasKind("intersection"),PP=bP.root.internal.narrow(($,X)=>{let Y=Number.parseInt($),z=mU.epoch(Y);if(z instanceof e4)return X.errors.merge(z),!1;return!0}).configure({description:"an integer string representing a safe Unix timestamp"},"self").assertHasKind("intersection"),Ig=j$.module({root:PP,parse:u$({in:PP,morphs:($)=>new Date($),declaredOut:O$.Date})},{name:"string.date.epoch"}),vP=Z6(jg,"an ISO 8601 (YYYY-MM-DDTHH:mm:ss.sssZ) date").internal.assertHasKind("intersection"),xg=j$.module({root:vP,parse:u$({in:vP,morphs:($)=>new Date($),declaredOut:O$.Date})},{name:"string.date.iso"}),Sg=j$.module({root:RP,parse:u$({declaredIn:RP,in:"string",morphs:($,X)=>{let Y=new Date($);if(Number.isNaN(Y.valueOf()))return X.error("a parsable date");return Y},declaredOut:O$.Date}),iso:xg,epoch:Ig},{name:"string.date"}),kg=Z6(/^[\w%+.-]+@[\d.A-Za-z-]+\.[A-Za-z]{2,}$/,"an email address","email"),CP="(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])",p8=`(${CP}[.]){3}${CP}`,bg=new RegExp(`^${p8}$`),j6="(?:[0-9a-fA-F]{1,4})",fg=new RegExp(`^((?:${j6}:){7}(?:${j6}|:)|(?:${j6}:){6}(?:${p8}|:${j6}|:)|(?:${j6}:){5}(?::${p8}|(:${j6}){1,2}|:)|(?:${j6}:){4}(?:(:${j6}){0,1}:${p8}|(:${j6}){1,3}|:)|(?:${j6}:){3}(?:(:${j6}){0,2}:${p8}|(:${j6}){1,4}|:)|(?:${j6}:){2}(?:(:${j6}){0,3}:${p8}|(:${j6}){1,5}|:)|(?:${j6}:){1}(?:(:${j6}){0,4}:${p8}|(:${j6}){1,6}|:)|(?::((?::${j6}){0,5}:${p8}|(?::${j6}){1,7}|:)))(%[0-9a-zA-Z.]{1,})?$`),hg=j$.module({root:["v4 | v6","@","an IP address"],v4:Z6(bg,"an IPv4 address","ipv4"),v6:Z6(fg,"an IPv6 address","ipv6")},{name:"string.ip"}),x2="a JSON string",fP=($)=>{if(!($ instanceof SyntaxError))throw $;return`must be ${x2} (${$})`},gg=u$({meta:x2,domain:"string",predicate:{meta:x2,predicate:($,X)=>{try{return JSON.parse($),!0}catch(Y){return X.reject({code:"predicate",expected:x2,problem:fP(Y)})}}}}),yg=($,X)=>{if($.length===0)return X.error({code:"predicate",expected:x2,actual:"empty"});try{return JSON.parse($)}catch(Y){return X.error({code:"predicate",expected:x2,problem:fP(Y)})}},mg=j$.module({root:gg,parse:u$({meta:"safe JSON string parser",in:"string",morphs:yg,declaredOut:O$.jsonObject})},{name:"string.json"}),jP=Z6(/^[a-z]*$/,"only lowercase letters"),ug=j$.module({root:u$({in:"string",morphs:($)=>$.toLowerCase(),declaredOut:jP}),preformatted:jP},{name:"string.lower"}),hP=["NFC","NFD","NFKC","NFKD"],H7=L$(hP,($,X)=>[X,u$({domain:"string",predicate:(Y)=>Y.normalize(X)===Y,meta:`${X}-normalized unicode`})]),uU=L$(hP,($,X)=>[X,u$({in:"string",morphs:(Y)=>Y.normalize(X),declaredOut:H7[X]})]),cg=j$.module({root:uU.NFC,preformatted:H7.NFC},{name:"string.normalize.NFC"}),pg=j$.module({root:uU.NFD,preformatted:H7.NFD},{name:"string.normalize.NFD"}),dg=j$.module({root:uU.NFKC,preformatted:H7.NFKC},{name:"string.normalize.NFKC"}),lg=j$.module({root:uU.NFKD,preformatted:H7.NFKD},{name:"string.normalize.NFKD"}),ig=j$.module({root:"NFC",NFC:cg,NFD:pg,NFKC:dg,NFKD:lg},{name:"string.normalize"}),BP=Z6(NU,"a well-formed numeric string"),rg=j$.module({root:BP,parse:u$({in:BP,morphs:($)=>Number.parseFloat($),declaredOut:O$.number})},{name:"string.numeric"}),IP="a regex pattern",ng=u$({domain:"string",predicate:{meta:IP,predicate:($,X)=>{try{return new RegExp($),!0}catch(Y){return X.reject({code:"predicate",expected:IP,problem:String(Y)})}}},meta:{format:"regex"}}),og=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[A-Za-z-][\dA-Za-z-]*)(?:\.(?:0|[1-9]\d*|\d*[A-Za-z-][\dA-Za-z-]*))*))?(?:\+([\dA-Za-z-]+(?:\.[\dA-Za-z-]+)*))?$/,tg=Z6(og,"a semantic version (see https://semver.org/)"),xP=Z6(/^\S.*\S$|^\S?$/,"trimmed"),ag=j$.module({root:u$({in:"string",morphs:($)=>$.trim(),declaredOut:xP}),preformatted:xP},{name:"string.trim"}),SP=Z6(/^[A-Z]*$/,"only uppercase letters"),sg=j$.module({root:u$({in:"string",morphs:($)=>$.toUpperCase(),declaredOut:SP}),preformatted:SP},{name:"string.upper"}),eg=($)=>{if(URL.canParse)return URL.canParse($);try{return new URL($),!0}catch{return!1}},kP=u$({domain:"string",predicate:{meta:"a URL string",predicate:eg},meta:{format:"uri"}}),$y=j$.module({root:kP,parse:u$({declaredIn:kP,in:"string",morphs:($,X)=>{try{return new URL($)}catch{return X.error("a URL string")}},declaredOut:u$(URL)})},{name:"string.url"}),Xy=j$.module({root:["versioned | nil | max","@",{description:"a UUID",format:"uuid"}],"#nil":"'00000000-0000-0000-0000-000000000000'","#max":"'ffffffff-ffff-ffff-ffff-ffffffffffff'","#versioned":/[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}/i,v1:Z6(/^[\da-f]{8}-[\da-f]{4}-1[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv1"),v2:Z6(/^[\da-f]{8}-[\da-f]{4}-2[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv2"),v3:Z6(/^[\da-f]{8}-[\da-f]{4}-3[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv3"),v4:Z6(/^[\da-f]{8}-[\da-f]{4}-4[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv4"),v5:Z6(/^[\da-f]{8}-[\da-f]{4}-5[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv5"),v6:Z6(/^[\da-f]{8}-[\da-f]{4}-6[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv6"),v7:Z6(/^[\da-f]{8}-[\da-f]{4}-7[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv7"),v8:Z6(/^[\da-f]{8}-[\da-f]{4}-8[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv8")},{name:"string.uuid"}),gP=j$.module({root:O$.string,alpha:Z6(/^[A-Za-z]*$/,"only letters"),alphanumeric:Z6(/^[\dA-Za-z]*$/,"only letters and digits 0-9"),hex:qg,base64:Tg,capitalize:Rg,creditCard:Cg,date:Sg,digits:Z6(/^\d*$/,"only digits 0-9"),email:kg,integer:bP,ip:hg,json:mg,lower:ug,normalize:ig,numeric:rg,regex:ng,semver:tg,trim:ag,upper:sg,url:$y,uuid:Xy},{name:"string"});var yP=j$.module({bigint:O$.bigint,boolean:O$.boolean,false:O$.false,never:O$.never,null:O$.null,number:O$.number,object:O$.object,string:O$.string,symbol:O$.symbol,true:O$.true,unknown:O$.unknown,undefined:O$.undefined}),mP=j$.module({root:O$.unknown,any:O$.unknown},{name:"unknown"}),Yy=j$.module({root:O$.jsonObject,stringify:C2("morph",{in:O$.jsonObject,morphs:($)=>JSON.stringify($),declaredOut:O$.string})},{name:"object.json"}),uP=j$.module({root:O$.object,json:Yy},{name:"object"});class cP extends V4{description='instantiate an object from an index signature and corresponding value type like `Record("string", "number")`'}var Gy=x1(["K",O$.key],"V")(($)=>({domain:"object",index:{signature:$.K,value:$.V}}),cP);class pP extends V4{description='pick a set of properties from an object like `Pick(User, "name | age")`'}var zy=x1(["T",O$.object],["K",O$.key])(($)=>$.T.pick($.K),pP);class dP extends V4{description='omit a set of properties from an object like `Omit(User, "age")`'}var Uy=x1(["T",O$.object],["K",O$.key])(($)=>$.T.omit($.K),dP);class lP extends V4{description="make all named properties of an object optional like `Partial(User)`"}var Wy=x1(["T",O$.object])(($)=>$.T.partial(),lP);class iP extends V4{description="make all named properties of an object required like `Required(User)`"}var Qy=x1(["T",O$.object])(($)=>$.T.required(),iP);class rP extends V4{description='exclude branches of a union like `Exclude("boolean", "true")`'}var Zy=x1("T","U")(($)=>$.T.exclude($.U),rP);class nP extends V4{description='extract branches of a union like `Extract("0 | false | 1", "number")`'}var Hy=x1("T","U")(($)=>$.T.extract($.U),nP),oP=j$.module({Exclude:Zy,Extract:Hy,Omit:Uy,Partial:Wy,Pick:zy,Record:Gy,Required:Qy});var d8=SN({...yP,...oP,..._P,...FP,string:gP,number:mU,object:uP,unknown:mP},{prereducedAliases:!0,name:"ark"}),p6=d8.export();Object.assign(I2.ambient,p6);I2.typeAttachments={string:p6.string.root,number:p6.number.root,bigint:p6.bigint,boolean:p6.boolean,symbol:p6.symbol,undefined:p6.undefined,null:p6.null,object:p6.object.root,unknown:p6.unknown.root,false:p6.false,true:p6.true,never:p6.never,arrayIndex:p6.Array.index,Key:p6.Key,Record:p6.Record,Array:p6.Array.root,Date:p6.Date};var n1=Object.assign(d8.type,I2.typeAttachments),Oy=d8.match,wy=d8.generic,f3$=d8.schema,Vy=d8.define,Dy=d8.declare;var Ny="__vite_start_time"in globalThis,Ey=typeof window!=="undefined",$U$="vitest"in globalThis,G8=n1("string"),tP=n1('"true" | "false" | undefined'),z8=MD({isServer:!Ny&&!Ey,server:{CI:n1("string | undefined").pipe(Boolean),POSTGRES_USER:G8,POSTGRES_PASSWORD:G8,POSTGRES_DATABASE:G8,POSTGRES_HOST:G8,POSTGRES_PORT:G8.pipe(($)=>Number.parseInt($,10)),BACKEND_PORT:G8.pipe(($)=>Number.parseInt($,10)),RUN_WORKERS_FROM_SOURCE:tP.pipe(($)=>$==="true"),FRONTEND_PORT:G8.pipe(($)=>Number.parseInt($,10)),FRONTEND_ORIGINS:G8.pipe.try(($)=>JSON.parse($),n1("string[]")),API_KEY_OPENAI:n1("string | undefined"),API_KEY_RESEND:n1("string | undefined")},clientPrefix:"VITE_",client:{VITE_BACKEND_ORIGIN:G8,VITE_DEV_FRONTEND_HOST:n1("string | undefined"),VITE_DEV_HTTPS:tP.pipe(($)=>$==="true")},runtimeEnv:import.meta.env,emptyStringAsUndefined:!0});var fN={};Z8(fN,{users:()=>iX,untrackedUserColumnNames:()=>Fy,twoFactorMethod:()=>Xv,trackedUserColumnName:()=>My,trackableUserColumnNames:()=>eP,signInHistory:()=>Jy,role:()=>sP,players:()=>bN,passwordResetAttempts:()=>Ay,games:()=>pU,banishedIps:()=>dU,accountActions:()=>Ly,accountAction:()=>$v});function l8(){return O4({length:24}).$type()}function aP($){return T`lower(${$})`}var cU=T`TO_CHAR(NOW() AT TIME ZONE 'UTC', 'YYYY-MM-DD"T"HH24:MI:SS.MS"Z"')`,sP=D5("role",["admin","user"]),iX=S8("users",{id:v1().primaryKey().defaultRandom(),username:O4({length:16}).notNull(),emailOffered:O4({length:254}).notNull(),emailVerified:O4({length:254}),password:O4({length:254}),createdAtIso:l8().notNull().default(cU),createdIp:O4({length:45}).notNull(),isActive:J5().notNull().default(!1),verifiedAtIso:l8(),userRole:sP().default("user")},($)=>[GD("usernameUniqueIndex").on(aP($.username)),GD("emailVerifiedUniqueIndex").on(aP($.emailVerified))]),Fy=["id","createdAtIso","createdIp","isActive","verifiedAtIso"],eP=["username","emailOffered","emailVerified","password","userRole"],My=D5("trackedUserColumnName",eP),$v=D5("accountAction",["cooldown","confirmEmail","signIn","resetPassword"]),Ly=S8("accountActions",{userId:v1().references(()=>iX.id).primaryKey(),action:$v().notNull(),code:O4({length:254}).notNull(),wrongCodeCount:A5().notNull().default(0),expiresAtIso:l8().notNull()}),pU=S8("games",{id:v1().primaryKey().defaultRandom()}),bN=S8("players",{userId:v1().notNull().references(()=>iX.id,{onDelete:"cascade"}),gameId:v1().notNull().references(()=>pU.id,{onDelete:"cascade"}),score:A5().notNull()},($)=>[u_({name:"players_userId_gameId_pk",columns:[$.userId,$.gameId]})]),Jy=S8("signInHistory",{id:v1().primaryKey().defaultRandom(),userId:v1().references(()=>iX.id,{onDelete:"cascade"}),signInTimeIso:l8().notNull().default(cU),ipAddress:O4({length:45}).notNull(),userAgent:O4({length:1024}),successful:J5().notNull().default(!1)}),Xv=D5("twoFactorMethod",["email","phone"]),Ay=S8("passwordResetAttempts",{id:v1().primaryKey().defaultRandom(),userId:v1().notNull().references(()=>iX.id,{onDelete:"cascade"}),requestedIp:O4({length:45}).notNull(),requestedAtIso:l8().notNull().default(cU),succeededIp:O4({length:45}),succeededAtIso:l8(),verificationMethod:Xv().notNull()}),dU=S8("banishedIps",{ip:O4({length:45}).primaryKey(),reason:O4({length:2048}).notNull(),banishedAtIso:l8().notNull().default(cU),banishedUntilIso:l8()});var __dirname="/home/runner/work/wayforge/wayforge/apps/tempest.games/src/database";class hN{options;sql;drizzle;observers=new Map;async setupTriggersAndNotifications(){await this.sql.file(Ky.resolve(__dirname,"notify_update.sql"));let $=[r6(iX),r6(pU),r6(bN)];await this.sql`SELECT create_notify_triggers(${this.sql.array($)})`,await this.sql.listen("table_update",(X)=>{let Y=X.split(","),z=Y[0],G=Y[1],U=`${z}("${G}")`;if(this.observers.has(U))this.observers.get(U).next(U)})}constructor($=!1,X={host:z8.POSTGRES_HOST,port:z8.POSTGRES_PORT,user:z8.POSTGRES_USER,password:z8.POSTGRES_PASSWORD,database:z8.POSTGRES_DATABASE}){this.options=X,this.sql=w2(X),this.drizzle=VU(this.sql,{schema:fN,logger:$})}observe($,X){if(!this.observers.has($))this.observers.set($,new g$);this.observers.get($).subscribe("SINGLETON",X)}}import{resolve as Ty}from"path";import{existsSync as gN,mkdirSync as Yv,readFileSync as _y,readdirSync as Gv,rmSync as zv,statSync as Uv,writeFileSync as qy}from"fs";import{resolve as yN}from"path";var Wv=class{rootDir;get initialized(){return gN(this.rootDir)}initialize(){if(!this.initialized)Yv(this.rootDir,{recursive:!0})}constructor($){if(this.rootDir=$.path,$.eagerInit)this.initialize()}getItem($){let X=yN(this.rootDir,$);if(gN(X))return _y(X,"utf-8");return null}setItem($,X){this.initialize();let Y=yN(this.rootDir,$);qy(Y,X)}removeItem($){let X=yN(this.rootDir,$);if(gN(X))this.initialize(),zv(X)}key($){return Gv(this.rootDir).sort((z,G)=>{let U=Uv(z);return Uv(G).ctimeMs-U.ctimeMs})[$]??null}clear(){zv(this.rootDir,{recursive:!0}),Yv(this.rootDir,{recursive:!0})}get length(){return Gv(this.rootDir).length}};var mN=new Wv({path:Ty(process.cwd(),"storage")});function Qv($){return $.toString({smallestUnit:"millisecond"})}function AU$($){return B3.Instant.from($)}import*as lU from"fs";import*as Zv from"readline";function Ry($){let Y=$.replace(":","T").replace(" ","").replace(/(\d{2})\/(\w{3})\/(\d{4})T(.+)/,(z,G,U,W,Q)=>{let H={Jan:"01",Feb:"02",Mar:"03",Apr:"04",May:"05",Jun:"06",Jul:"07",Aug:"08",Sep:"09",Oct:"10",Nov:"11",Dec:"12"}[U];return`${W}-${H}-${G}T${Q}`});return new Date(Y)}async function Hv($,X="/var/log/nginx/access.log",Y=new Date){let z=new Map;if(!lU.existsSync(X))return $.error(`Log file not found: ${X}`),z;let G=lU.createReadStream(X),U=Zv.createInterface({input:G,crlfDelay:Number.POSITIVE_INFINITY}),W=new Date(Y.getTime()-3600000);return U.on("line",(Q)=>{let Z=/^(?<ip>\S+) \S+ \S+ \[(?<dateTime>.*?)\]/,H=Q.match(Z);if(H?.groups){let O=H.groups.ip,w=H.groups.dateTime,V=Ry(w);if(!Number.isNaN(V.getTime())){if(V>=W&&V<=Y){let D=z.get(O);if(!D)D=[],z.set(O,D);D.push(Q)}}else $.error(`Failed to parse date: ${w}`)}}),new Promise((Q,Z)=>{U.on("error",(H)=>{Z(H)}),U.on("close",()=>{Q(z)})})}function Ov($){return $.toJsonSchema()}var Py=["Network security adjudicator, your job is to determine if an IP address should be banned.","The IP address in question created the following logs on our server today:","```nginx.log\n"].join(`
191
+ `)+"}");class jU{config;resolvedConfig;name;get[f4](){return"scope"}referencesById={};references=[];resolutions={};exportedNames=[];aliases={};resolved=!1;nodesByHash={};intrinsic;constructor($,X){if(this.config=r5(g.config,X),this.resolvedConfig=r5(g.resolvedConfig,X),this.name=this.resolvedConfig.name??`anonymousScope${Object.keys(wN).length}`,this.name in wN)f(`A Scope already named ${this.name} already exists`);wN[this.name]=this;let Y=Object.entries($).map((z)=>this.preparseOwnAliasEntry(...z));for(let[z,G]of Y){let U=z;if(z[0]==="#"){if(U=z.slice(1),U in this.aliases)f(KR(U));this.aliases[U]=G}else{if(U in this.aliases)f(KR(z));this.aliases[U]=G,this.exportedNames.push(U)}if(!z$(G,"module")&&!z$(G,"generic")&&!h8(G)){let W=this.preparseOwnDefinitionFormat(G,{alias:U});this.resolutions[U]=z$(W,"root")?this.bindReference(W):this.createParseContext(W).id}}_R??=this.node("union",{branches:["string","number","object","bigint","symbol",{unit:!0},{unit:!1},{unit:void 0},{unit:null}]},{prereduced:!0}),this.nodesByHash[_R.hash]=this.node("intersection",{},{prereduced:!0}),this.intrinsic=g.intrinsic?L$(g.intrinsic,(z,G)=>z.startsWith("json")?[]:[z,this.bindReference(G)]):{}}cacheGetter($,X){return Object.defineProperty(this,$,{value:X}),X}get internal(){return this}_json;get json(){if(!this._json)this.export();return this._json}defineSchema($){return $}generic=(...$)=>{let X=this;return(Y,z)=>new c8($,z?new KU(Y):Y,X,X,z??null)};units=($,X)=>{let Y=[];for(let G of $)if(!Y.includes(G))Y.push(G);let z=Y.map((G)=>this.node("unit",{unit:G},X));return this.node("union",z,{...X,prereduced:!0})};lazyResolutions=[];lazilyResolve($,X){let Y=this.node("alias",{reference:X??"synthetic",resolve:$},{prereduced:!0});if(!this.resolved)this.lazyResolutions.push(Y);return Y}schema=($,X)=>this.finalize(this.parseSchema($,X));parseSchema=($,X)=>this.node(a5($),$,X);preparseNode($,X,Y){let z=typeof $==="string"?$:a5(X,$);if(X6(X)&&X.kind===z)return X;if(z==="alias"&&!Y?.prereduced){let{reference:W}=G7.implementation.normalize(X,this);if(W.startsWith("$")){let Q=this.resolveRoot(W.slice(1));X=Q,z=Q.kind}}else if(z==="union"&&a4(X,"object")){let W=qh(X);if(W?.length===1)X=W[0],z=a5(X)}if(X6(X)&&X.kind===z)return X;let U=T2[z].normalize?.(X,this)??X;if(X6(U))return U.kind===z?U:Th(z,U.kind);return{...Y,$:this,kind:z,def:U,prefix:Y.alias??z}}bindReference($){let X;if(X6($))X=$.$===this?$:new $.constructor($.attachments,this);else X=$.$===this?$:new c8($.params,$.bodyDef,$.$,this,$.hkt);if(!this.resolved)Object.assign(this.referencesById,X.referencesById);return X}resolveRoot($){return this.maybeResolveRoot($)??f(NN($))}maybeResolveRoot($){let X=this.maybeResolve($);if(z$(X,"generic"))return;return X}maybeResolveSubalias($){return VN(this.aliases,$)??VN(this.ambient,$)}get ambient(){return g.ambient}maybeResolve($){let X=this.resolutions[$];if(X){if(typeof X!=="string")return this.bindReference(X);let z=h4[X];if(z$(z,"root"))return this.resolutions[$]=z;if(z$(z,"context")){if(z.phase==="resolving")return this.node("alias",{reference:`$${$}`},{prereduced:!0});if(z.phase==="resolved")return S$(`Unexpected resolved context for was uncached by its scope: ${J$(z)}`);z.phase="resolving";let G=this.bindReference(this.parseOwnDefinitionFormat(z.def,z));return z.phase="resolved",h4[G.id]=G,h4[z.id]=G,this.resolutions[$]=G}return S$(`Unexpected nodesById entry for ${X}: ${J$(z)}`)}let Y=this.aliases[$]??this.ambient?.[$];if(!Y)return this.maybeResolveSubalias($);if(Y=this.normalizeRootScopeValue(Y),z$(Y,"generic"))return this.resolutions[$]=this.bindReference(Y);if(z$(Y,"module")){if(!Y.root)f(jR($));return this.resolutions[$]=this.bindReference(Y.root)}return this.resolutions[$]=this.parse(Y,{alias:$})}createParseContext($){let X=$.id??nD($.prefix);return h4[X]=Object.assign($,{[f4]:"context",$:this,id:X,phase:"unresolved"})}traversal($){return new i1($,this.resolvedConfig)}import(...$){return new v2(L$(this.export(...$),(X,Y)=>[`#${X}`,Y]))}precompilation;_exportedResolutions;_exports;export(...$){if(!this._exports){this._exports={};for(let Y of this.exportedNames){let z=this.aliases[Y];this._exports[Y]=z$(z,"module")?ON(z,this):qR(this.maybeResolve(Y))}for(let Y of this.lazyResolutions)Y.resolution;if(this._exportedResolutions=CR(this,this._exports),this._json=vR(this._exportedResolutions),Object.assign(this.resolutions,this._exportedResolutions),this.references=Object.values(this.referencesById),!this.resolvedConfig.jitless){let Y=PR(this.references);this.precompilation=Y.write(TR,4),RR(this.references,Y)}this.resolved=!0}let X=$.length?$:this.exportedNames;return new v2(L$(X,(Y,z)=>[z,this._exports[z]]))}resolve($){return this.export()[$]}node=($,X,Y={})=>{let z=this.preparseNode($,X,Y);if(X6(z))return this.bindReference(z);let G=this.createParseContext(z),U=oD(G),W=this.bindReference(U);return h4[G.id]=W};parse=($,X={})=>this.finalize(this.parseDefinition($,X));parseDefinition($,X={}){if(z$($,"root"))return this.bindReference($);let Y=this.preparseOwnDefinitionFormat($,X);if(z$(Y,"root"))return this.bindReference(Y);let z=this.createParseContext(Y);h4[z.id]=z;let G=this.bindReference(this.parseOwnDefinitionFormat($,z));if(G.isCyclic)G=oT(G,z.id);return h4[z.id]=G,G}finalize($){if(qR($),!$.precompilation&&!this.resolvedConfig.jitless)Rh($.references);return $}}class DN extends jU{parseOwnDefinitionFormat($,X){return oD(X)}preparseOwnDefinitionFormat($,X){return this.preparseNode(a5($),$,X)}preparseOwnAliasEntry($,X){return[$,X]}normalizeRootScopeValue($){return $}}var qR=($)=>{let X=$.references.filter((Y)=>Y.hasKind("alias"));for(let Y of X){Object.assign(Y.referencesById,Y.resolution.referencesById);for(let z of $.references)if(Y.id in z.referencesById)Object.assign(z.referencesById,Y.referencesById)}return $},vR=($)=>L$($,(X,Y)=>[X,z$(Y,"root")||z$(Y,"generic")?Y.json:z$(Y,"module")?vR(Y):S$(`Unexpected resolution ${J$(Y)}`)]),VN=($,X)=>{let Y=X.indexOf(".");if(Y===-1)return;let z=X.slice(0,Y),G=$[z];if(G===void 0)return;if(!z$(G,"module"))return f(Ph(z));let U=X.slice(Y+1),W=G[U];if(W===void 0)return VN(G,U);if(z$(W,"root")||z$(W,"generic"))return W;if(z$(W,"module"))return W.root??f(jR(X));S$(`Unexpected resolution for alias '${X}': ${J$(W)}`)},BU=($,X)=>new DN($,X),W7=new DN({});var CR=($,X)=>{let Y={};for(let z in X){let G=X[z];if(z$(G,"module")){let U=CR($,G),W=L$(U,(Q,Z)=>[`${z}.${Q}`,Z]);Object.assign(Y,W)}else if(z$(G,"root")||z$(G,"generic"))Y[z]=G;else S$(`Unexpected scope resolution ${J$(G)}`)}return Y},NN=($)=>`'${$}' is unresolvable`,Ph=($)=>`'${$}' must reference a module to be accessed using dot syntax`,jR=($)=>`Reference to submodule '${$}' must specify an alias`;W7.export();var{schema:u$,node:C2,defineSchema:H5$,generic:x1}=W7;var EN="^(?:0|[1-9]\\d*)$",vh=new RegExp(EN),V5$=F6(vh);var BR=BU({bigint:"bigint",boolean:[{unit:!1},{unit:!0}],false:{unit:!1},never:[],null:{unit:null},number:"number",object:"object",string:"string",symbol:"symbol",true:{unit:!0},unknown:{},undefined:{unit:void 0},Array,Date},{prereducedAliases:!0}).export();g.intrinsic={...BR};var IR=BU({integer:{domain:"number",divisor:1},lengthBoundable:["string",Array],key:["string","symbol"],nonNegativeIntegerString:{domain:"string",pattern:EN}},{prereducedAliases:!0}).export();Object.assign(g.intrinsic,IR);var Ch=BU({jsonPrimitive:["string","number",{unit:!0},{unit:!1},{unit:null}],jsonObject:{domain:"object",index:{signature:"string",value:"$jsonData"}},jsonData:["$jsonPrimitive","$jsonObject"]},{prereducedAliases:!0}).export(),O$={...BR,...IR,...Ch,emptyStructure:C2("structure",{},{prereduced:!0})};g.intrinsic={...O$};var SR=($)=>typeof $==="string"&&$[0]==="d"&&($[1]==="'"||$[1]==='"')&&$.at(-1)===$[1],xR=($)=>$.toString()!=="Invalid Date",kR=($)=>$.slice(2,-1),FN=($)=>`'${$}' could not be parsed by the Date constructor`,bR=($,X)=>jh($,X),jh=($,X)=>{let Y=new Date($);if(xR(Y))return Y;let z=DT($);if(z!==void 0){let G=new Date(z);if(xR(G))return G}return X?f(X===!0?FN($):X):void 0};var MN=($,X)=>{let Y=$.scanner.shiftUntil(Bh[hR[X]]);if($.scanner.lookahead==="")return $.error(xh(Y,X));if($.scanner.shift(),X==="/"){try{new RegExp(Y)}catch(z){f(String(z))}$.root=$.ctx.$.node("intersection",{domain:"string",pattern:Y},{prereduced:!0})}else if(c6(X,LN))$.root=$.ctx.$.node("unit",{unit:Y});else{let z=bR(Y,FN(Y));$.root=$.ctx.$.node("unit",{meta:Y,unit:z})}},LN={"'":1,'"':1},fR={"/":1,"'":1,'"':1},hR={"d'":"'",'d"':'"',"'":"'",'"':'"',"/":"/"},Bh={"'":($)=>$.lookahead==="'",'"':($)=>$.lookahead==='"',"/":($)=>$.lookahead==="/"},Ih={'"':"double-quote","'":"single-quote","/":"forward slash"},xh=($,X)=>`${X}${$} requires a closing ${Ih[hR[X]]}`;var gR=($)=>`Private type references should not include '#'. Use '${$}' instead.`,IU="Optional definitions like 'string?' are only valid as properties in an object or tuple",xU="Defaultable definitions like 'number = 0' are only valid as properties in an object or tuple";var yR={">":!0,">=":!0},mR={"<":!0,"<=":!0};var j2={"<":">",">":"<","<=":">=",">=":"<=","==":"=="},uR=($)=>`Unmatched )${$===""?"":` before ${$}`}`,SU=($)=>`Missing ${$}`,cR=($,X)=>`Left bounds are only valid when paired with right bounds (try ...${X}${$})`,kU=($)=>`Left-bounded expressions must specify their limits using < or <= (was ${$})`,pR=($,X,Y,z)=>`An expression may have at most one left bound (parsed ${$}${j2[X]}, ${Y}${j2[z]})`;var dR=($,X,Y)=>lR($,X,Y,[]),lR=($,X,Y,z)=>{let G=Y.parseUntilFinalizer();if(z.push(G.root),G.finalizer===">"){if(z.length!==X.params.length)return Y.error(JN($,X.names,z.map((U)=>U.expression)));return z}if(G.finalizer===",")return lR($,X,Y,z);return G.error(SU(">"))},JN=($,X,Y)=>`${$}<${X.join(", ")}> requires exactly ${X.length} args (got ${Y.length}${Y.length===0?"":`: ${Y.join(", ")}`})`;var AN=($)=>{let X=$.scanner.shiftUntilNextTerminator();if(X==="keyof")$.addPrefix("keyof");else $.root=kh($,X)},Sh=($,X,Y)=>{if(Y.scanner.shiftUntilNonWhitespace(),Y.scanner.shift()!=="<")return Y.error(JN($,X.names,[]));let G=dR($,X,Y);return X(...G)},kh=($,X)=>bh($,X)??fh($,X)??$.error(X===""?$.scanner.lookahead==="#"?gR($.shiftedByOne().scanner.shiftUntilNextTerminator()):KN($):NN(X)),bh=($,X)=>{if($.ctx.args?.[X]){let z=$.ctx.args[X];if(typeof z!=="string")return z;return $.ctx.$.node("alias",{reference:z},{prereduced:!0})}let Y=$.ctx.$.maybeResolve(X);if(z$(Y,"root"))return Y;if(Y===void 0)return;if(z$(Y,"generic"))return Sh(X,Y,$);return f(`Unexpected resolution ${J$(Y)}`)},fh=($,X)=>{let Y=NT(X);if(Y!==void 0)return $.ctx.$.node("unit",{unit:Y});let z=FT(X);if(z!==void 0)return $.ctx.$.node("unit",{unit:z})},KN=($)=>{let X=$.previousOperator();return X?_N(X,$.scanner.unscanned):hh($.scanner.unscanned)},_N=($,X="")=>`Token '${$}' requires a right operand${X?` before '${X}'`:""}`,hh=($)=>`Expected an expression${$?` before '${$}'`:""}`;var qN=($)=>$.scanner.lookahead===""?$.error(KN($)):$.scanner.lookahead==="("?$.shiftedByOne().reduceGroupOpen():$.scanner.lookaheadIsIn(fR)?MN($,$.scanner.shift()):$.scanner.lookaheadIsIn(g8)?qN($.shiftedByOne()):$.scanner.lookahead==="d"?$.scanner.nextLookahead in LN?MN($,`${$.scanner.shift()}${$.scanner.shift()}`):AN($):AN($);class Y8 extends CD{shiftUntilNextTerminator(){return this.shiftUntilNonWhitespace(),this.shiftUntil(()=>(this.lookahead in Y8.terminatingChars))}static terminatingChars={"<":1,">":1,"=":1,"|":1,"&":1,")":1,"[":1,"%":1,",":1,":":1,"?":1,"#":1,...g8};static finalizingLookaheads={">":1,",":1,"":1,"=":1,"?":1};static lookaheadIsFinalizing=($,X)=>$===">"?X[0]==="="?X[1]==="=":X.trimStart()===""||c6(X.trimStart()[0],Y8.terminatingChars):$==="="?X[0]!=="=":$===","||$==="?"}var rR=($,X)=>{let Y=gh($,X);if($.root.hasKind("unit")){if(typeof $.root.unit==="number"){$.reduceLeftBound($.root.unit,Y),$.unsetRoot();return}if($.root.unit instanceof Date){let z=`d'${$.root.description??$.root.unit.toISOString()}'`;$.unsetRoot(),$.reduceLeftBound(z,Y);return}}return mh($,Y)},nR={"<":1,">":1,"=":1},gh=($,X)=>$.scanner.lookaheadIs("=")?`${X}${$.scanner.shift()}`:X;var iR=($,X,Y,z)=>{if(Y.extends(g.intrinsic.number)){if(typeof X!=="number")return f(TN($,X,z));return $==="=="?["min","max"]:$[0]===">"?["min"]:["max"]}if(Y.extends(g.intrinsic.lengthBoundable)){if(typeof X!=="number")return f(TN($,X,z));return $==="=="?["exactLength"]:$[0]===">"?["minLength"]:["maxLength"]}if(Y.extends(g.intrinsic.Date))return $==="=="?["after","before"]:$[0]===">"?["after"]:["before"];return f(fT(Y.expression))},yh=($)=>({rule:SR($.limit)?kR($.limit):$.limit,exclusive:$.comparator.length===1}),mh=($,X)=>{let Y=$.unsetRoot(),z=$.scanner.location;$.parseOperand();let G=$.unsetRoot(),U=$.scanner.sliceChars(z,$.scanner.location);if($.root=Y,!G.hasKind("unit")||typeof G.unit!=="number"&&!(G.unit instanceof Date))return $.error(TN(X,U,"right"));let W=G.unit,Q=X.length===1,Z=iR(X,typeof W==="number"?W:U,Y,"right");for(let O of Z)$.constrainRoot(O,X==="=="?{rule:W}:{rule:W,exclusive:Q});if(!$.branches.leftBound)return;if(!c6(X,mR))return $.error(kU(X));let H=iR($.branches.leftBound.comparator,$.branches.leftBound.limit,Y,"left");$.constrainRoot(H[0],yh($.branches.leftBound)),$.branches.leftBound=null},TN=($,X,Y)=>`Comparator ${Y==="left"?j2[$]:$} must be ${Y==="left"?"preceded":"followed"} by a corresponding literal (was ${X})`;var oR=($)=>{$.scanner.shiftUntilNonWhitespace();let X=$.scanner.shiftUntilNextTerminator();$.root=$.root.brand(X)};var aR=($)=>{let X=$.scanner.shiftUntilNextTerminator(),Y=ET(X,{errorOnFail:tR(X)});if(Y===0)$.error(tR(0));$.root=$.root.constrain("divisor",Y)},tR=($)=>`% operator must be followed by a non-zero integer literal (was ${$})`;var RN=($)=>{let X=$.scanner.shift();return X===""?$.finalize(""):X==="["?$.scanner.shift()==="]"?$.setRoot($.root.array()):$.error(uh):X==="|"?$.scanner.lookahead===">"?$.shiftedByOne().pushRootToBranch("|>"):$.pushRootToBranch(X):X==="&"?$.pushRootToBranch(X):X===")"?$.finalizeGroup():Y8.lookaheadIsFinalizing(X,$.scanner.unscanned)?$.finalize(X):c6(X,nR)?rR($,X):X==="%"?aR($):X==="#"?oR($):(X in g8)?RN($):$.error(bU(X))},bU=($,X="")=>`'${$}' is not allowed here${X&&` (should be ${X})`}`,uh="Missing expected ']'";var sR=($)=>{let X=$.unsetRoot();$.parseOperand();let Y=$.unsetRoot();if(!Y.hasKind("unit"))return $.error(ch(Y.expression));let z=Y.unit instanceof Date?()=>new Date(Y.unit):Y.unit;return[X,"=",z]},ch=($)=>`Default value '${$}' must a literal value`;var PN=($,X)=>{let Y=X.$.maybeResolveRoot($);if(Y)return Y;if($.endsWith("[]")){let U=X.$.maybeResolveRoot($.slice(0,-2));if(U)return U.array()}let z=new B2(new Y8($),X),G=ph(z);if(z.finalizer===">")f(bU(">"));return G},ph=($)=>{$.parseOperand();let X=Q7($).root;if(!X)return S$(`Root was unexpectedly unset after parsing string '${$.scanner.scanned}'`);if($.finalizer==="=")X=sR($);else if($.finalizer==="?")X=[X,"?"];if($.scanner.shiftUntilNonWhitespace(),$.scanner.lookahead)f(bU($.scanner.lookahead));return X},Q7=($)=>{while($.finalizer===void 0)dh($);return $},dh=($)=>$.hasRoot()?$.parseOperator():$.parseOperand();class B2{root;branches={prefixes:[],leftBound:null,intersection:null,union:null,pipe:null};finalizer;groups=[];scanner;ctx;constructor($,X){this.scanner=$,this.ctx=X}error($){return f($)}hasRoot(){return this.root!==void 0}setRoot($){this.root=$}unsetRoot(){let $=this.root;return this.root=void 0,$}constrainRoot(...$){this.root=this.root.constrain($[0],$[1])}finalize($){if(this.groups.length)return this.error(SU(")"));this.finalizeBranches(),this.finalizer=$}reduceLeftBound($,X){let Y=j2[X];if(!c6(Y,yR))return this.error(kU(X));if(this.branches.leftBound)return this.error(pR(this.branches.leftBound.limit,this.branches.leftBound.comparator,$,Y));this.branches.leftBound={comparator:Y,limit:$}}finalizeBranches(){if(this.assertRangeUnset(),this.branches.pipe){this.pushRootToBranch("|>"),this.root=this.branches.pipe;return}if(this.branches.union){this.pushRootToBranch("|"),this.root=this.branches.union;return}if(this.branches.intersection){this.pushRootToBranch("&"),this.root=this.branches.intersection;return}this.applyPrefixes()}finalizeGroup(){this.finalizeBranches();let $=this.groups.pop();if(!$)return this.error(uR(this.scanner.unscanned));this.branches=$}addPrefix($){this.branches.prefixes.push($)}applyPrefixes(){while(this.branches.prefixes.length){let $=this.branches.prefixes.pop();this.root=$==="keyof"?this.root.keyof():S$(`Unexpected prefix '${$}'`)}}pushRootToBranch($){this.assertRangeUnset(),this.applyPrefixes();let X=this.root;if(this.root=void 0,this.branches.intersection=this.branches.intersection?.rawAnd(X)??X,$==="&")return;if(this.branches.union=this.branches.union?.rawOr(this.branches.intersection)??this.branches.intersection,this.branches.intersection=null,$==="|")return;this.branches.pipe=this.branches.pipe?.rawPipeOnce(this.branches.union)??this.branches.union,this.branches.union=null}parseUntilFinalizer(){return Q7(new B2(this.scanner,this.ctx))}parseOperator(){return RN(this)}parseOperand(){return qN(this)}assertRangeUnset(){if(this.branches.leftBound)return this.error(cR(this.branches.leftBound.limit,this.branches.leftBound.comparator))}reduceGroupOpen(){this.groups.push(this.branches),this.branches={prefixes:[],leftBound:null,union:null,intersection:null,pipe:null}}previousOperator(){return this.branches.leftBound?.comparator??this.branches.prefixes.at(-1)??(this.branches.intersection?"&":this.branches.union?"|":this.branches.pipe?"|>":void 0)}shiftedByOne(){return this.scanner.shift(),this}}var lh="An empty string is not a valid generic parameter name",fU=($,X,Y)=>{$.shiftUntilNonWhitespace();let z=$.shiftUntilNextTerminator();if(z===""){if($.lookahead===""&&X.length)return X;return f(lh)}return $.shiftUntilNonWhitespace(),ih($,z,X,Y)},eR="extends ",ih=($,X,Y,z)=>{if($.shiftUntilNonWhitespace(),$.unscanned.startsWith(eR))$.jumpForward(eR.length);else{if($.lookahead===",")$.shift();return Y.push(X),fU($,Y,z)}let G=Q7(new B2($,z));return Y.push([X,G.root]),fU($,Y,z)};class vN extends l1{$;constructor($){super((...X)=>new Z7($)(...X),{bind:$});this.$=$}in($){return new Z7(this.$,$===void 0?void 0:this.$.parse($))}at($,X){return new Z7(this.$).at($,X)}case($,X){return new Z7(this.$).case($,X)}}class Z7 extends l1{$;in;key;branches=[];constructor($,X){super((Y)=>this.caseEntries(Object.entries(Y).map(([z,G])=>z==="default"?[z,G]:[this.$.parse(z),G])));this.$=$,this.in=X}at($,X){if(this.key)f(nh);if(this.branches.length)f(rh);return this.key=$,X?this.match(X):this}case($,X){return this.caseEntry(this.$.parse($),X)}caseEntry($,X){let z=(this.key?this.$.parse({[this.key]:$}):$).pipe(X);return this.branches.push(z),this}match($){return this($)}strings($){return this.caseEntries(Object.entries($).map(([X,Y])=>X==="default"?[X,Y]:[this.$.node("unit",{unit:X}),Y]))}caseEntries($){for(let X=0;X<$.length;X++){let[Y,z]=$[X];if(Y==="default"){if(X!==$.length-1)f("default may only be specified as the last key of a switch definition");return this.default(z)}if(typeof z!=="function")return f(`Value for case "${Y}" must be a function (was ${u6(z)})`);this.caseEntry(Y,z)}return this}default($){if(typeof $==="function")this.case(O$.unknown,$);let X={branches:this.branches,ordered:!0};if($==="never"||$==="assert")X.meta={onFail:$P};let Y=this.$.node("union",X);if(!this.in)return this.$.finalize(Y);let z=this.in.pipe(Y);if($==="never"||$==="assert")z=z.configureReferences({onFail:$P},"self");return this.$.finalize(z)}}var $P=($)=>$.throw(),rh="A key matcher must be specified before the first case i.e. match.at('foo') or match.in<object>().at('bar')",nh="At most one key matcher may be specified per expression";var hU=($,X)=>{if(o$($)){if($[1]==="=")return[X.$.parseOwnDefinitionFormat($[0],X),"=",$[2]];if($[1]==="?")return[X.$.parseOwnDefinitionFormat($[0],X),"?"]}return gU($,X)},XP="Only required keys may make their values optional, e.g. { [mySymbol]: ['number', '?'] }",YP="Only required keys may specify default values, e.g. { value: 'number = 0' }";var GP=($,X)=>{let Y,z={},G=uX($);for(let[W,Q]of G){let Z=ah(W);if(Z.kind==="spread"){if(!F0(z))return f(th);let D=X.$.parseOwnDefinitionFormat(Q,X);if(D.equals(O$.object))continue;if(!D.hasKind("intersection")||!D.basis?.equals(O$.object))return f(sh(D.expression));Y=D.structure;continue}if(Z.kind==="undeclared"){if(Q!=="reject"&&Q!=="delete"&&Q!=="ignore")f(oh(Q));z.undeclared=Q;continue}let H=hU(Q,X),O=Z;if(Z.kind==="required"){if(!o$(H))CN(z,"required",{key:Z.normalized,value:H},X);else CN(z,"optional",H[1]==="="?{key:Z.normalized,value:H[0],default:H[2]}:{key:Z.normalized,value:H[0]},X);continue}if(o$(H)){if(H[1]==="?")f(XP);if(H[1]==="=")f(YP)}if(Z.kind==="optional"){CN(z,"optional",{key:Z.normalized,value:H},X);continue}let w=X.$.parseOwnDefinitionFormat(O.normalized,X),V=CU(w,H,X.$);if(V.index)z.index=B$(z.index,V.index);if(V.required)z.required=B$(z.required,V.required)}let U=X.$.node("structure",z);return X.$.parseSchema({domain:"object",structure:Y?.merge(U)??U})},CN=($,X,Y,z)=>{$[X]=B$($[X],z.$.node(X,Y))},oh=($)=>`Value of '+' key must be 'reject', 'delete', or 'ignore' (was ${J$($)})`,th="Spread operator may only be used as the first key in an object",ah=($)=>typeof $==="symbol"?{kind:"required",normalized:$}:$.at(-1)==="?"?$.at(-2)===m5?{kind:"required",normalized:`${$.slice(0,-2)}?`}:{kind:"optional",normalized:$.slice(0,-1)}:$[0]==="["&&$.at(-1)==="]"?{kind:"index",normalized:$.slice(1,-1)}:$[0]===m5&&$[1]==="["&&$.at(-1)==="]"?{kind:"required",normalized:$.slice(1)}:$==="..."?{kind:"spread"}:$==="+"?{kind:"undeclared"}:{kind:"required",normalized:$==="\\..."?"...":$==="\\+"?"+":$},sh=($)=>`Spread operand must resolve to an object literal type (was ${$})`;var UP=($,X)=>Zg($)?HP[$[0]]($,X):Wg($)?ZP[$[1]]($,X):null,eh=($,X)=>X.$.parseOwnDefinitionFormat($[1],X).keyof(),jN=($,X)=>{if($[2]===void 0)return f(_N($[1],""));let Y=X.$.parseOwnDefinitionFormat($[0],X),z=X.$.parseOwnDefinitionFormat($[2],X);if($[1]==="|")return X.$.node("union",{branches:[Y,z]});let G=$[1]==="&"?X1(Y,z,X.$):t5(Y,z,X.$);if(G instanceof t)return G.throw();return G},$g=($,X)=>X.$.parseOwnDefinitionFormat($[0],X).array(),Xg=($,X)=>{if(typeof $[2]!=="function")return f(WP("=>",$[2]));return X.$.parseOwnDefinitionFormat($[0],X).pipe($[2])},WP=($,X)=>`${$===":"?"Narrow":"Morph"} expression requires a function following '${$}' (was ${typeof X})`,Yg=($,X)=>{if(typeof $[2]!=="function")return f(WP(":",$[2]));return X.$.parseOwnDefinitionFormat($[0],X).constrain("predicate",$[2])},Gg=($,X)=>X.$.parseOwnDefinitionFormat($[0],X).configureReferences($[2],"shallow"),QP=($)=>$,zg=QP({"[]":$g,"?":()=>f(IU)}),Ug=QP({"|":jN,"&":jN,":":Yg,"=>":Xg,"|>":jN,"@":Gg,"=":()=>f(xU)}),ZP={...zg,...Ug},Wg=($)=>ZP[$[1]]!==void 0,Qg=($)=>$,HP=Qg({keyof:eh,instanceof:($,X)=>{if(typeof $[1]!=="function")return f(zP(g5($[1])));let Y=$.slice(1).map((z)=>typeof z==="function"?X.$.node("proto",{proto:z}):f(zP(g5(z))));return Y.length===1?Y[0]:X.$.node("union",{branches:Y})},"===":($,X)=>X.$.units($.slice(1))}),Zg=($)=>HP[$[0]]!==void 0,zP=($)=>`Expected a constructor following 'instanceof' operator (was ${$})`;var VP=($,X)=>{let Y=[{}],z=0;while(z<$.length){let G=!1;if($[z]==="..."&&z<$.length-1)G=!0,z++;let U=hU($[z],X),[W,Q,Z]=!o$(U)?[U]:U;if(z++,G){if(!W.extends(g.intrinsic.Array))return f(wg(W.expression));Y=Y.flatMap((H)=>W.distribute((O)=>Og(MU(H),O)))}else Y=Y.map((H)=>{if(Q==="?")return DP(H,W);if(Q==="=")return Hg(H,W,Z);return BN(H,W)})}return X.$.parseSchema(Y.map((G)=>F0(G)?{proto:Array,exactLength:0}:{proto:Array,sequence:G}))},BN=($,X)=>{if($.defaultables||$.optionals)return f($.variadic?QN:Vg);if($.variadic)$.postfix=B$($.postfix,X);else $.prefix=B$($.prefix,X);return $},DP=($,X)=>{if($.variadic)return f(NP);return $.optionals=B$($.optionals,X),$},Hg=($,X,Y)=>{if($.variadic)return f(NP);if($.optionals)return f(Dg);return $.defaultables=B$($.defaultables,[[X,Y]]),$},OP=($,X)=>{if($.postfix)f(wP);if($.variadic){if(!$.variadic.equals(X))f(wP)}else $.variadic=X.internal;return $},Og=($,X)=>{let Y=X.select({method:"find",kind:"sequence"});if(!Y)return OP($,g.intrinsic.unknown);if(Y.prefix)for(let z of Y.prefix)BN($,z);if(Y.optionals)for(let z of Y.optionals)DP($,z);if(Y.variadic)OP($,Y.variadic);if(Y.postfix)for(let z of Y.postfix)BN($,z);return $},wg=($)=>`Spread element must be an array (was ${$})`,wP="A tuple may have at most one variadic element",Vg="A required element may not follow an optional element",NP="An optional element may not follow a variadic element";var Dg="A defaultable element may not follow an optional element without a default";var Ng={},gU=($,X)=>{if(typeof $==="string"){if(X.args&&Object.keys(X.args).some((z)=>$.includes(z)))return PN($,X);let Y=Ng[X.$.name]??={};return Y[$]??=PN($,X)}return a4($,"object")?Eg($,X):f(IN(u6($)))},Eg=($,X)=>{let Y=h5($);switch(Y){case void 0:if(z$($,"root"))return $;return GP($,X);case"Array":return Fg($,X);case"RegExp":return X.$.node("intersection",{domain:"string",pattern:$},{prereduced:!0});case"Function":{let z=h8($)?$():$;if(z$(z,"root"))return z;return f(IN("Function"))}default:return f(IN(Y??J$($)))}},Fg=($,X)=>UP($,X)??VP($,X),IN=($)=>`Type definitions must be strings or objects (was ${$})`;class xN extends l1{constructor($){let X=Object.assign({errors:e4,hkt:V4,$,raw:$.parse,module:$.constructor.module,scope:$.constructor.scope,define:$.define,match:$.match,generic:$.generic,schema:$.schema,keywords:$.ambient,unit:$.unit,enumerated:$.enumerated,instanceOf:$.instanceOf,valueOf:$.valueOf,or:$.or,and:$.and,merge:$.merge,pipe:$.pipe},$.ambientAttachments);super((...Y)=>{if(Y.length===1)return $.parse(Y[0]);if(Y.length===2&&typeof Y[0]==="string"&&Y[0][0]==="<"&&Y[0].at(-1)===">"){let z=Y[0].slice(1,-1),G=$.parseGenericParams(z,{});return new c8(G,Y[1],$,$,null)}return $.parse(Y)},{bind:$,attach:X})}}var I2=g;class yU extends jU{get ambientAttachments(){if(!I2.typeAttachments)return;return this.cacheGetter("ambientAttachments",L$(I2.typeAttachments,($,X)=>[$,this.bindReference(X)]))}preparseOwnAliasEntry($,X){let Y=$.indexOf("<");if(Y===-1){if(z$(X,"module")||z$(X,"generic"))return[$,X];let U=this.name==="ark"?$:$==="root"?this.name:`${this.name}.${$}`,W=this.resolvedConfig.keywords?.[U];if(W)X=[X,"@",W];return[$,X]}if($.at(-1)!==">")f("'>' must be the last character of a generic declaration in a scope");let z=$.slice(0,Y),G=$.slice(Y+1,-1);return[z,()=>{let U=this.parseGenericParams(G,{alias:z});return ST(U,X,this)}]}parseGenericParams($,X){return fU(new Y8($),[],this.createParseContext({...X,def:$,prefix:"generic"}))}normalizeRootScopeValue($){if(h8($)&&!z$($,"generic"))return $();return $}preparseOwnDefinitionFormat($,X){return{...X,def:$,prefix:X.alias??"type"}}parseOwnDefinitionFormat($,X){if(!(X.alias&&(X.alias in this.aliases))&&!X.args)X.args={this:X.id};let z=gU($,X);if(o$(z)){if(z[1]==="=")return f(xU);if(z[1]==="?")return f(IU)}return z}unit=($)=>this.units([$]);valueOf=($)=>this.units(eq($));enumerated=(...$)=>this.units($);instanceOf=($)=>this.node("proto",{proto:$},{prereduced:!0});or=(...$)=>this.schema($.map((X)=>this.parse(X)));and=(...$)=>$.reduce((X,Y)=>X.and(this.parse(Y)),this.intrinsic.unknown);merge=(...$)=>$.reduce((X,Y)=>X.merge(this.parse(Y)),this.intrinsic.object);pipe=(...$)=>this.intrinsic.unknown.pipe(...$);match=new vN(this);declare=()=>({type:this.type});define($){return $}type=new xN(this);static scope=($,X={})=>new yU($,X);static module=($,X={})=>this.scope($,X).export()}var SN=Object.assign(yU.scope,{define:($)=>$}),j$=yU;class EP extends V4{description='merge an object\'s properties onto another like `Merge(User, { isAdmin: "true" })`'}var Mg=x1(["base",O$.object],["props",O$.object])(($)=>$.base.merge($.props),EP),FP=j$.module({Key:O$.key,Merge:Mg});class MP extends V4{}var Lg=x1("element")(($)=>{let X=$.element.exclude(O$.Array),Y=X.array();return X.rawOr(Y).pipe(f8).distribute((z)=>z.assertHasKind("morph").declareOut(Y),u$)},MP),LP=j$.module({root:O$.Array,readonly:"root",index:O$.nonNegativeIntegerString,liftFrom:Lg},{name:"Array"});var kN=u$(["string",pX.FileConstructor]),Jg=kN.rawOr(kN.array()),JP=u$({meta:"an object representing parsed form data",domain:"object",index:{signature:"string",value:Jg}}),AP=j$.module({root:["instanceof",FormData],value:kN,parsed:JP,parse:u$({in:FormData,morphs:($)=>{let X={};for(let[Y,z]of $)if(Y in X){let G=X[Y];if(typeof G==="string"||G instanceof pX.FileConstructor)X[Y]=[G,z];else G.push(z)}else X[Y]=z;return X},declaredOut:JP})},{name:"FormData"});var KP=j$.module({Int8:["instanceof",Int8Array],Uint8:["instanceof",Uint8Array],Uint8Clamped:["instanceof",Uint8ClampedArray],Int16:["instanceof",Int16Array],Uint16:["instanceof",Uint16Array],Int32:["instanceof",Int32Array],Uint32:["instanceof",Uint32Array],Float32:["instanceof",Float32Array],Float64:["instanceof",Float64Array],BigInt64:["instanceof",BigInt64Array],BigUint64:["instanceof",BigUint64Array]},{name:"TypedArray"});var Ag={Boolean:1,Number:1,String:1},_P=j$.module({...L$({...AD,..._D},($,X)=>($ in Ag)?[]:[$,["instanceof",X]]),Array:LP,TypedArray:KP,FormData:AP});var Kg=u$({domain:{domain:"number",meta:"a number representing a Unix timestamp"},divisor:{rule:1,meta:"an integer representing a Unix timestamp"},min:{rule:-8640000000000000,meta:"a Unix timestamp after -8640000000000000"},max:{rule:8640000000000000,meta:"a Unix timestamp before 8640000000000000"},meta:"an integer representing a safe Unix timestamp"}),_g=u$({domain:"number",divisor:1}),mU=j$.module({root:O$.number,integer:_g,epoch:Kg,safe:u$({domain:{domain:"number",numberAllowsNaN:!1},min:Number.MIN_SAFE_INTEGER,max:Number.MAX_SAFE_INTEGER}),NaN:["===",Number.NaN],Infinity:["===",Number.POSITIVE_INFINITY],NegativeInfinity:["===",Number.NEGATIVE_INFINITY]},{name:"number"});var Z6=($,X,Y)=>{let z={domain:"string",pattern:{rule:$.source,flags:$.flags,meta:X}};if(Y)z.meta={format:Y};return C2("intersection",z)},qP=Z6(u5,"a well-formed integer string"),bP=j$.module({root:qP,parse:u$({in:qP,morphs:($,X)=>{let Y=Number.parseInt($);return Number.isSafeInteger(Y)?Y:X.error("an integer in the range Number.MIN_SAFE_INTEGER to Number.MAX_SAFE_INTEGER")},declaredOut:O$.integer})},{name:"string.integer"}),qg=Z6(/^[\dA-Fa-f]+$/,"hex characters only"),Tg=j$.module({root:Z6(/^(?:[\d+/A-Za-z]{4})*(?:[\d+/A-Za-z]{2}==|[\d+/A-Za-z]{3}=)?$/,"base64-encoded"),url:Z6(/^(?:[\w-]{4})*(?:[\w-]{2}(?:==|%3D%3D)?|[\w-]{3}(?:=|%3D)?)?$/,"base64url-encoded")},{name:"string.base64"}),TP=Z6(/^[A-Z].*$/,"capitalized"),Rg=j$.module({root:u$({in:"string",morphs:($)=>$.charAt(0).toUpperCase()+$.slice(1),declaredOut:TP}),preformatted:TP},{name:"string.capitalize"}),Pg=($)=>{let X=$.replaceAll(/[ -]+/g,""),Y=0,z,G,U=!1;for(let W=X.length-1;W>=0;W--){if(z=X.substring(W,W+1),G=Number.parseInt(z,10),U)G*=2,Y+=G>=10?G%10+1:G;else Y+=G;U=!U}return!!(Y%10===0?X:!1)},vg=/^(?:4\d{12}(?:\d{3,6})?|5[1-5]\d{14}|(222[1-9]|22[3-9]\d|2[3-6]\d{2}|27[01]\d|2720)\d{12}|6(?:011|5\d\d)\d{12,15}|3[47]\d{13}|3(?:0[0-5]|[68]\d)\d{11}|(?:2131|1800|35\d{3})\d{11}|6[27]\d{14}|^(81\d{14,17}))$/,Cg=u$({domain:"string",pattern:{meta:"a credit card number",rule:vg.source},predicate:{meta:"a credit card number",predicate:Pg}});var jg=/^([+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-3])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))(T((([01]\d|2[0-3])((:?)[0-5]\d)?|24:?00)([,.]\d+(?!:))?)?(\17[0-5]\d([,.]\d+)?)?([Zz]|([+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/;var Bg=($)=>!Number.isNaN(new Date($).valueOf()),RP=u$({domain:"string",predicate:{meta:"a parsable date",predicate:Bg}}).assertHasKind("intersection"),PP=bP.root.internal.narrow(($,X)=>{let Y=Number.parseInt($),z=mU.epoch(Y);if(z instanceof e4)return X.errors.merge(z),!1;return!0}).configure({description:"an integer string representing a safe Unix timestamp"},"self").assertHasKind("intersection"),Ig=j$.module({root:PP,parse:u$({in:PP,morphs:($)=>new Date($),declaredOut:O$.Date})},{name:"string.date.epoch"}),vP=Z6(jg,"an ISO 8601 (YYYY-MM-DDTHH:mm:ss.sssZ) date").internal.assertHasKind("intersection"),xg=j$.module({root:vP,parse:u$({in:vP,morphs:($)=>new Date($),declaredOut:O$.Date})},{name:"string.date.iso"}),Sg=j$.module({root:RP,parse:u$({declaredIn:RP,in:"string",morphs:($,X)=>{let Y=new Date($);if(Number.isNaN(Y.valueOf()))return X.error("a parsable date");return Y},declaredOut:O$.Date}),iso:xg,epoch:Ig},{name:"string.date"}),kg=Z6(/^[\w%+.-]+@[\d.A-Za-z-]+\.[A-Za-z]{2,}$/,"an email address","email"),CP="(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])",p8=`(${CP}[.]){3}${CP}`,bg=new RegExp(`^${p8}$`),j6="(?:[0-9a-fA-F]{1,4})",fg=new RegExp(`^((?:${j6}:){7}(?:${j6}|:)|(?:${j6}:){6}(?:${p8}|:${j6}|:)|(?:${j6}:){5}(?::${p8}|(:${j6}){1,2}|:)|(?:${j6}:){4}(?:(:${j6}){0,1}:${p8}|(:${j6}){1,3}|:)|(?:${j6}:){3}(?:(:${j6}){0,2}:${p8}|(:${j6}){1,4}|:)|(?:${j6}:){2}(?:(:${j6}){0,3}:${p8}|(:${j6}){1,5}|:)|(?:${j6}:){1}(?:(:${j6}){0,4}:${p8}|(:${j6}){1,6}|:)|(?::((?::${j6}){0,5}:${p8}|(?::${j6}){1,7}|:)))(%[0-9a-zA-Z.]{1,})?$`),hg=j$.module({root:["v4 | v6","@","an IP address"],v4:Z6(bg,"an IPv4 address","ipv4"),v6:Z6(fg,"an IPv6 address","ipv6")},{name:"string.ip"}),x2="a JSON string",fP=($)=>{if(!($ instanceof SyntaxError))throw $;return`must be ${x2} (${$})`},gg=u$({meta:x2,domain:"string",predicate:{meta:x2,predicate:($,X)=>{try{return JSON.parse($),!0}catch(Y){return X.reject({code:"predicate",expected:x2,problem:fP(Y)})}}}}),yg=($,X)=>{if($.length===0)return X.error({code:"predicate",expected:x2,actual:"empty"});try{return JSON.parse($)}catch(Y){return X.error({code:"predicate",expected:x2,problem:fP(Y)})}},mg=j$.module({root:gg,parse:u$({meta:"safe JSON string parser",in:"string",morphs:yg,declaredOut:O$.jsonObject})},{name:"string.json"}),jP=Z6(/^[a-z]*$/,"only lowercase letters"),ug=j$.module({root:u$({in:"string",morphs:($)=>$.toLowerCase(),declaredOut:jP}),preformatted:jP},{name:"string.lower"}),hP=["NFC","NFD","NFKC","NFKD"],H7=L$(hP,($,X)=>[X,u$({domain:"string",predicate:(Y)=>Y.normalize(X)===Y,meta:`${X}-normalized unicode`})]),uU=L$(hP,($,X)=>[X,u$({in:"string",morphs:(Y)=>Y.normalize(X),declaredOut:H7[X]})]),cg=j$.module({root:uU.NFC,preformatted:H7.NFC},{name:"string.normalize.NFC"}),pg=j$.module({root:uU.NFD,preformatted:H7.NFD},{name:"string.normalize.NFD"}),dg=j$.module({root:uU.NFKC,preformatted:H7.NFKC},{name:"string.normalize.NFKC"}),lg=j$.module({root:uU.NFKD,preformatted:H7.NFKD},{name:"string.normalize.NFKD"}),ig=j$.module({root:"NFC",NFC:cg,NFD:pg,NFKC:dg,NFKD:lg},{name:"string.normalize"}),BP=Z6(NU,"a well-formed numeric string"),rg=j$.module({root:BP,parse:u$({in:BP,morphs:($)=>Number.parseFloat($),declaredOut:O$.number})},{name:"string.numeric"}),IP="a regex pattern",ng=u$({domain:"string",predicate:{meta:IP,predicate:($,X)=>{try{return new RegExp($),!0}catch(Y){return X.reject({code:"predicate",expected:IP,problem:String(Y)})}}},meta:{format:"regex"}}),og=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[A-Za-z-][\dA-Za-z-]*)(?:\.(?:0|[1-9]\d*|\d*[A-Za-z-][\dA-Za-z-]*))*))?(?:\+([\dA-Za-z-]+(?:\.[\dA-Za-z-]+)*))?$/,tg=Z6(og,"a semantic version (see https://semver.org/)"),xP=Z6(/^\S.*\S$|^\S?$/,"trimmed"),ag=j$.module({root:u$({in:"string",morphs:($)=>$.trim(),declaredOut:xP}),preformatted:xP},{name:"string.trim"}),SP=Z6(/^[A-Z]*$/,"only uppercase letters"),sg=j$.module({root:u$({in:"string",morphs:($)=>$.toUpperCase(),declaredOut:SP}),preformatted:SP},{name:"string.upper"}),eg=($)=>{if(URL.canParse)return URL.canParse($);try{return new URL($),!0}catch{return!1}},kP=u$({domain:"string",predicate:{meta:"a URL string",predicate:eg},meta:{format:"uri"}}),$y=j$.module({root:kP,parse:u$({declaredIn:kP,in:"string",morphs:($,X)=>{try{return new URL($)}catch{return X.error("a URL string")}},declaredOut:u$(URL)})},{name:"string.url"}),Xy=j$.module({root:["versioned | nil | max","@",{description:"a UUID",format:"uuid"}],"#nil":"'00000000-0000-0000-0000-000000000000'","#max":"'ffffffff-ffff-ffff-ffff-ffffffffffff'","#versioned":/[\da-f]{8}-[\da-f]{4}-[1-8][\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}/i,v1:Z6(/^[\da-f]{8}-[\da-f]{4}-1[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv1"),v2:Z6(/^[\da-f]{8}-[\da-f]{4}-2[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv2"),v3:Z6(/^[\da-f]{8}-[\da-f]{4}-3[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv3"),v4:Z6(/^[\da-f]{8}-[\da-f]{4}-4[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv4"),v5:Z6(/^[\da-f]{8}-[\da-f]{4}-5[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv5"),v6:Z6(/^[\da-f]{8}-[\da-f]{4}-6[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv6"),v7:Z6(/^[\da-f]{8}-[\da-f]{4}-7[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv7"),v8:Z6(/^[\da-f]{8}-[\da-f]{4}-8[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv8")},{name:"string.uuid"}),gP=j$.module({root:O$.string,alpha:Z6(/^[A-Za-z]*$/,"only letters"),alphanumeric:Z6(/^[\dA-Za-z]*$/,"only letters and digits 0-9"),hex:qg,base64:Tg,capitalize:Rg,creditCard:Cg,date:Sg,digits:Z6(/^\d*$/,"only digits 0-9"),email:kg,integer:bP,ip:hg,json:mg,lower:ug,normalize:ig,numeric:rg,regex:ng,semver:tg,trim:ag,upper:sg,url:$y,uuid:Xy},{name:"string"});var yP=j$.module({bigint:O$.bigint,boolean:O$.boolean,false:O$.false,never:O$.never,null:O$.null,number:O$.number,object:O$.object,string:O$.string,symbol:O$.symbol,true:O$.true,unknown:O$.unknown,undefined:O$.undefined}),mP=j$.module({root:O$.unknown,any:O$.unknown},{name:"unknown"}),Yy=j$.module({root:O$.jsonObject,stringify:C2("morph",{in:O$.jsonObject,morphs:($)=>JSON.stringify($),declaredOut:O$.string})},{name:"object.json"}),uP=j$.module({root:O$.object,json:Yy},{name:"object"});class cP extends V4{description='instantiate an object from an index signature and corresponding value type like `Record("string", "number")`'}var Gy=x1(["K",O$.key],"V")(($)=>({domain:"object",index:{signature:$.K,value:$.V}}),cP);class pP extends V4{description='pick a set of properties from an object like `Pick(User, "name | age")`'}var zy=x1(["T",O$.object],["K",O$.key])(($)=>$.T.pick($.K),pP);class dP extends V4{description='omit a set of properties from an object like `Omit(User, "age")`'}var Uy=x1(["T",O$.object],["K",O$.key])(($)=>$.T.omit($.K),dP);class lP extends V4{description="make all named properties of an object optional like `Partial(User)`"}var Wy=x1(["T",O$.object])(($)=>$.T.partial(),lP);class iP extends V4{description="make all named properties of an object required like `Required(User)`"}var Qy=x1(["T",O$.object])(($)=>$.T.required(),iP);class rP extends V4{description='exclude branches of a union like `Exclude("boolean", "true")`'}var Zy=x1("T","U")(($)=>$.T.exclude($.U),rP);class nP extends V4{description='extract branches of a union like `Extract("0 | false | 1", "number")`'}var Hy=x1("T","U")(($)=>$.T.extract($.U),nP),oP=j$.module({Exclude:Zy,Extract:Hy,Omit:Uy,Partial:Wy,Pick:zy,Record:Gy,Required:Qy});var d8=SN({...yP,...oP,..._P,...FP,string:gP,number:mU,object:uP,unknown:mP},{prereducedAliases:!0,name:"ark"}),p6=d8.export();Object.assign(I2.ambient,p6);I2.typeAttachments={string:p6.string.root,number:p6.number.root,bigint:p6.bigint,boolean:p6.boolean,symbol:p6.symbol,undefined:p6.undefined,null:p6.null,object:p6.object.root,unknown:p6.unknown.root,false:p6.false,true:p6.true,never:p6.never,arrayIndex:p6.Array.index,Key:p6.Key,Record:p6.Record,Array:p6.Array.root,Date:p6.Date};var n1=Object.assign(d8.type,I2.typeAttachments),Oy=d8.match,wy=d8.generic,k3$=d8.schema,Vy=d8.define,Dy=d8.declare;var Ny="__vite_start_time"in globalThis,Ey=typeof window!=="undefined",s3$="vitest"in globalThis,G8=n1("string"),tP=n1('"true" | "false" | undefined'),z8=MD({isServer:!Ny&&!Ey,server:{CI:n1("string | undefined").pipe(Boolean),POSTGRES_USER:G8,POSTGRES_PASSWORD:G8,POSTGRES_DATABASE:G8,POSTGRES_HOST:G8,POSTGRES_PORT:G8.pipe(($)=>Number.parseInt($,10)),BACKEND_PORT:G8.pipe(($)=>Number.parseInt($,10)),RUN_WORKERS_FROM_SOURCE:tP.pipe(($)=>$==="true"),FRONTEND_PORT:G8.pipe(($)=>Number.parseInt($,10)),FRONTEND_ORIGINS:G8.pipe.try(($)=>JSON.parse($),n1("string[]")),API_KEY_OPENAI:n1("string | undefined"),API_KEY_RESEND:n1("string | undefined")},clientPrefix:"VITE_",client:{VITE_BACKEND_ORIGIN:G8,VITE_DEV_FRONTEND_HOST:n1("string | undefined"),VITE_DEV_HTTPS:tP.pipe(($)=>$==="true")},runtimeEnv:import.meta.env,emptyStringAsUndefined:!0});var fN={};Z8(fN,{users:()=>iX,untrackedUserColumnNames:()=>Fy,twoFactorMethod:()=>Xv,trackedUserColumnName:()=>My,trackableUserColumnNames:()=>eP,signInHistory:()=>Jy,role:()=>sP,players:()=>bN,passwordResetAttempts:()=>Ay,games:()=>pU,banishedIps:()=>dU,accountActions:()=>Ly,accountAction:()=>$v});function l8(){return O4({length:24}).$type()}function aP($){return T`lower(${$})`}var cU=T`TO_CHAR(NOW() AT TIME ZONE 'UTC', 'YYYY-MM-DD"T"HH24:MI:SS.MS"Z"')`,sP=D5("role",["admin","user"]),iX=S8("users",{id:v1().primaryKey().defaultRandom(),username:O4({length:16}).notNull(),emailOffered:O4({length:254}).notNull(),emailVerified:O4({length:254}),password:O4({length:254}),createdAtIso:l8().notNull().default(cU),createdIp:O4({length:45}).notNull(),isActive:J5().notNull().default(!1),verifiedAtIso:l8(),userRole:sP().default("user")},($)=>[GD("usernameUniqueIndex").on(aP($.username)),GD("emailVerifiedUniqueIndex").on(aP($.emailVerified))]),Fy=["id","createdAtIso","createdIp","isActive","verifiedAtIso"],eP=["username","emailOffered","emailVerified","password","userRole"],My=D5("trackedUserColumnName",eP),$v=D5("accountAction",["cooldown","confirmEmail","signIn","resetPassword"]),Ly=S8("accountActions",{userId:v1().references(()=>iX.id).primaryKey(),action:$v().notNull(),code:O4({length:254}).notNull(),wrongCodeCount:A5().notNull().default(0),expiresAtIso:l8().notNull()}),pU=S8("games",{id:v1().primaryKey().defaultRandom()}),bN=S8("players",{userId:v1().notNull().references(()=>iX.id,{onDelete:"cascade"}),gameId:v1().notNull().references(()=>pU.id,{onDelete:"cascade"}),score:A5().notNull()},($)=>[u_({name:"players_userId_gameId_pk",columns:[$.userId,$.gameId]})]),Jy=S8("signInHistory",{id:v1().primaryKey().defaultRandom(),userId:v1().references(()=>iX.id,{onDelete:"cascade"}),signInTimeIso:l8().notNull().default(cU),ipAddress:O4({length:45}).notNull(),userAgent:O4({length:1024}),successful:J5().notNull().default(!1)}),Xv=D5("twoFactorMethod",["email","phone"]),Ay=S8("passwordResetAttempts",{id:v1().primaryKey().defaultRandom(),userId:v1().notNull().references(()=>iX.id,{onDelete:"cascade"}),requestedIp:O4({length:45}).notNull(),requestedAtIso:l8().notNull().default(cU),succeededIp:O4({length:45}),succeededAtIso:l8(),verificationMethod:Xv().notNull()}),dU=S8("banishedIps",{ip:O4({length:45}).primaryKey(),reason:O4({length:2048}).notNull(),banishedAtIso:l8().notNull().default(cU),banishedUntilIso:l8()});var __dirname="/home/runner/work/wayforge/wayforge/apps/tempest.games/src/database";class hN{options;sql;drizzle;observers=new Map;async setupTriggersAndNotifications(){await this.sql.file(Ky.resolve(__dirname,"notify_update.sql"));let $=[r6(iX),r6(pU),r6(bN)];await this.sql`SELECT create_notify_triggers(${this.sql.array($)})`,await this.sql.listen("table_update",(X)=>{let Y=X.split(","),z=Y[0],G=Y[1],U=`${z}("${G}")`;if(this.observers.has(U))this.observers.get(U).next(U)})}constructor($=!1,X={host:z8.POSTGRES_HOST,port:z8.POSTGRES_PORT,user:z8.POSTGRES_USER,password:z8.POSTGRES_PASSWORD,database:z8.POSTGRES_DATABASE}){this.options=X,this.sql=w2(X),this.drizzle=VU(this.sql,{schema:fN,logger:$})}observe($,X){if(!this.observers.has($))this.observers.set($,new g$);this.observers.get($).subscribe("SINGLETON",X)}}import{resolve as Ty}from"path";import{existsSync as gN,mkdirSync as Yv,readFileSync as _y,readdirSync as Gv,rmSync as zv,statSync as Uv,writeFileSync as qy}from"fs";import{resolve as yN}from"path";var Wv=class{rootDir;get initialized(){return gN(this.rootDir)}initialize(){if(!this.initialized)Yv(this.rootDir,{recursive:!0})}constructor($){if(this.rootDir=$.path,$.eagerInit)this.initialize()}getItem($){let X=yN(this.rootDir,$);if(gN(X))return _y(X,"utf-8");return null}setItem($,X){this.initialize();let Y=yN(this.rootDir,$);qy(Y,X)}removeItem($){let X=yN(this.rootDir,$);if(gN(X))this.initialize(),zv(X)}key($){return Gv(this.rootDir).sort((z,G)=>{let U=Uv(z);return Uv(G).ctimeMs-U.ctimeMs})[$]??null}clear(){zv(this.rootDir,{recursive:!0}),Yv(this.rootDir,{recursive:!0})}get length(){return Gv(this.rootDir).length}};var mN=new Wv({path:Ty(process.cwd(),"storage")});function Qv($){return $.toString({smallestUnit:"millisecond"})}function LU$($){return B3.Instant.from($)}import*as lU from"fs";import*as Zv from"readline";function Ry($){let Y=$.replace(":","T").replace(" ","").replace(/(\d{2})\/(\w{3})\/(\d{4})T(.+)/,(z,G,U,W,Q)=>{let H={Jan:"01",Feb:"02",Mar:"03",Apr:"04",May:"05",Jun:"06",Jul:"07",Aug:"08",Sep:"09",Oct:"10",Nov:"11",Dec:"12"}[U];return`${W}-${H}-${G}T${Q}`});return new Date(Y)}async function Hv($,X="/var/log/nginx/access.log",Y=new Date){let z=new Map;if(!lU.existsSync(X))return $.error(`Log file not found: ${X}`),z;let G=lU.createReadStream(X),U=Zv.createInterface({input:G,crlfDelay:Number.POSITIVE_INFINITY}),W=new Date(Y.getTime()-3600000);return U.on("line",(Q)=>{let Z=/^(?<ip>\S+) \S+ \S+ \[(?<dateTime>.*?)\]/,H=Q.match(Z);if(H?.groups){let O=H.groups.ip,w=H.groups.dateTime,V=Ry(w);if(!Number.isNaN(V.getTime())){if(V>=W&&V<=Y){let D=z.get(O);if(!D)D=[],z.set(O,D);D.push(Q)}}else $.error(`Failed to parse date: ${w}`)}}),new Promise((Q,Z)=>{U.on("error",(H)=>{Z(H)}),U.on("close",()=>{Q(z)})})}function Ov($){return $.toJsonSchema()}var Py=["Network security adjudicator, your job is to determine if an IP address should be banned.","The IP address in question created the following logs on our server today:","```nginx.log\n"].join(`
192
192
  `);function wv($){return Py+$.join(`
193
193
 
194
194
  `)}var Vv={schema:n1([{shouldBanIp:"false"},"|",{shouldBanIp:"true",veryConciseReason:"string"}]),toJsonSchema:Ov,fallback:{shouldBanIp:!1}};var Cy=[".env","php"];async function Dv({generator:$,logFilePath:X,logger:Y,now:z=new Date}){let G=$.usdBudget,U=new hN({logQuery(R,_){Y.info("\uD83D\uDCDD query",R,_)}}),W=await Hv(Y,X,z),Q=[],Z=$.object(Vv),H=0,O=0;for(let[R,_]of W){Y.info(`\uD83D\uDD0D ruling on ${R}. logs:`),Y.info(_.map((x)=>` ${x}`).join(`