faf-cli 6.11.0 → 6.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,151 +1,151 @@
1
- import{createRequire as v8}from"node:module";var x8=Object.defineProperty;var _=($,Z)=>()=>(Z||$((Z={exports:{}}).exports,Z),Z.exports);var h8=($)=>$;function u8($,Z){this[$]=h8.bind(null,Z)}var k8=($,Z)=>{for(var U in Z)x8($,U,{get:Z[U],enumerable:!0,configurable:!0,set:u8.bind(Z,U)})};var g0=v8(import.meta.url);var C=_((JZ)=>{var W2=Symbol.for("yaml.alias"),u9=Symbol.for("yaml.document"),L$=Symbol.for("yaml.map"),k9=Symbol.for("yaml.pair"),D2=Symbol.for("yaml.scalar"),O$=Symbol.for("yaml.seq"),s=Symbol.for("yaml.node.type"),e8=($)=>!!$&&typeof $==="object"&&$[s]===W2,$Z=($)=>!!$&&typeof $==="object"&&$[s]===u9,ZZ=($)=>!!$&&typeof $==="object"&&$[s]===L$,UZ=($)=>!!$&&typeof $==="object"&&$[s]===k9,v9=($)=>!!$&&typeof $==="object"&&$[s]===D2,zZ=($)=>!!$&&typeof $==="object"&&$[s]===O$;function m9($){if($&&typeof $==="object")switch($[s]){case L$:case O$:return!0}return!1}function XZ($){if($&&typeof $==="object")switch($[s]){case W2:case L$:case D2:case O$:return!0}return!1}var QZ=($)=>(v9($)||m9($))&&!!$.anchor;JZ.ALIAS=W2;JZ.DOC=u9;JZ.MAP=L$;JZ.NODE_TYPE=s;JZ.PAIR=k9;JZ.SCALAR=D2;JZ.SEQ=O$;JZ.hasAnchor=QZ;JZ.isAlias=e8;JZ.isCollection=m9;JZ.isDocument=$Z;JZ.isMap=ZZ;JZ.isNode=XZ;JZ.isPair=UZ;JZ.isScalar=v9;JZ.isSeq=zZ});var u0=_((FZ)=>{var y=C(),x=Symbol("break visit"),p9=Symbol("skip children"),d=Symbol("remove node");function _$($,Z){let U=l9(Z);if(y.isDocument($)){if(I0(null,$.contents,U,Object.freeze([$]))===d)$.contents=null}else I0(null,$,U,Object.freeze([]))}_$.BREAK=x;_$.SKIP=p9;_$.REMOVE=d;function I0($,Z,U,z){let X=d9($,Z,U,z);if(y.isNode(X)||y.isPair(X))return c9($,z,X),I0($,X,U,z);if(typeof X!=="symbol"){if(y.isCollection(Z)){z=Object.freeze(z.concat(Z));for(let Q=0;Q<Z.items.length;++Q){let J=I0(Q,Z.items[Q],U,z);if(typeof J==="number")Q=J-1;else if(J===x)return x;else if(J===d)Z.items.splice(Q,1),Q-=1}}else if(y.isPair(Z)){z=Object.freeze(z.concat(Z));let Q=I0("key",Z.key,U,z);if(Q===x)return x;else if(Q===d)Z.key=null;let J=I0("value",Z.value,U,z);if(J===x)return x;else if(J===d)Z.value=null}}return X}async function I$($,Z){let U=l9(Z);if(y.isDocument($)){if(await R0(null,$.contents,U,Object.freeze([$]))===d)$.contents=null}else await R0(null,$,U,Object.freeze([]))}I$.BREAK=x;I$.SKIP=p9;I$.REMOVE=d;async function R0($,Z,U,z){let X=await d9($,Z,U,z);if(y.isNode(X)||y.isPair(X))return c9($,z,X),R0($,X,U,z);if(typeof X!=="symbol"){if(y.isCollection(Z)){z=Object.freeze(z.concat(Z));for(let Q=0;Q<Z.items.length;++Q){let J=await R0(Q,Z.items[Q],U,z);if(typeof J==="number")Q=J-1;else if(J===x)return x;else if(J===d)Z.items.splice(Q,1),Q-=1}}else if(y.isPair(Z)){z=Object.freeze(z.concat(Z));let Q=await R0("key",Z.key,U,z);if(Q===x)return x;else if(Q===d)Z.key=null;let J=await R0("value",Z.value,U,z);if(J===x)return x;else if(J===d)Z.value=null}}return X}function l9($){if(typeof $==="object"&&($.Collection||$.Node||$.Value))return Object.assign({Alias:$.Node,Map:$.Node,Scalar:$.Node,Seq:$.Node},$.Value&&{Map:$.Value,Scalar:$.Value,Seq:$.Value},$.Collection&&{Map:$.Collection,Seq:$.Collection},$);return $}function d9($,Z,U,z){if(typeof U==="function")return U($,Z,z);if(y.isMap(Z))return U.Map?.($,Z,z);if(y.isSeq(Z))return U.Seq?.($,Z,z);if(y.isPair(Z))return U.Pair?.($,Z,z);if(y.isScalar(Z))return U.Scalar?.($,Z,z);if(y.isAlias(Z))return U.Alias?.($,Z,z);return}function c9($,Z,U){let z=Z[Z.length-1];if(y.isCollection(z))z.items[$]=U;else if(y.isPair(z))if($==="key")z.key=U;else z.value=U;else if(y.isDocument(z))z.contents=U;else{let X=y.isAlias(z)?"alias":"scalar";throw Error(`Cannot replace node with ${X} parent`)}}FZ.visit=_$;FZ.visitAsync=I$});var L2=_((CZ)=>{var a9=C(),NZ=u0(),wZ={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},bZ=($)=>$.replace(/[!,[\]{}]/g,(Z)=>wZ[Z]);class h{constructor($,Z){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},h.defaultYaml,$),this.tags=Object.assign({},h.defaultTags,Z)}clone(){let $=new h(this.yaml,this.tags);return $.docStart=this.docStart,$}atDocument(){let $=new h(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:h.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},h.defaultTags);break}return $}add($,Z){if(this.atNextDocument)this.yaml={explicit:h.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},h.defaultTags),this.atNextDocument=!1;let U=$.trim().split(/[ \t]+/),z=U.shift();switch(z){case"%TAG":{if(U.length!==2){if(Z(0,"%TAG directive should contain exactly two parts"),U.length<2)return!1}let[X,Q]=U;return this.tags[X]=Q,!0}case"%YAML":{if(this.yaml.explicit=!0,U.length!==1)return Z(0,"%YAML directive should contain exactly one part"),!1;let[X]=U;if(X==="1.1"||X==="1.2")return this.yaml.version=X,!0;else{let Q=/^\d+\.\d+$/.test(X);return Z(6,`Unsupported YAML version ${X}`,Q),!1}}default:return Z(0,`Unknown directive ${z}`,!0),!1}}tagName($,Z){if($==="!")return"!";if($[0]!=="!")return Z(`Not a valid tag: ${$}`),null;if($[1]==="<"){let Q=$.slice(2,-1);if(Q==="!"||Q==="!!")return Z(`Verbatim tags aren't resolved, so ${$} is invalid.`),null;if($[$.length-1]!==">")Z("Verbatim tags must end with a >");return Q}let[,U,z]=$.match(/^(.*!)([^!]*)$/s);if(!z)Z(`The ${$} tag has no suffix`);let X=this.tags[U];if(X)try{return X+decodeURIComponent(z)}catch(Q){return Z(String(Q)),null}if(U==="!")return $;return Z(`Could not resolve tag: ${$}`),null}tagString($){for(let[Z,U]of Object.entries(this.tags))if($.startsWith(U))return Z+bZ($.substring(U.length));return $[0]==="!"?$:`!<${$}>`}toString($){let Z=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],U=Object.entries(this.tags),z;if($&&U.length>0&&a9.isNode($.contents)){let X={};NZ.visit($.contents,(Q,J)=>{if(a9.isNode(J)&&J.tag)X[J.tag]=!0}),z=Object.keys(X)}else z=[];for(let[X,Q]of U){if(X==="!!"&&Q==="tag:yaml.org,2002:")continue;if(!$||z.some((J)=>J.startsWith(Q)))Z.push(`%TAG ${X} ${Q}`)}return Z.join(`
2
- `)}}h.defaultYaml={explicit:!1,version:"1.2"};h.defaultTags={"!!":"tag:yaml.org,2002:"};CZ.Directives=h});var R$=_((yZ)=>{var s9=C(),SZ=u0();function EZ($){if(/[\x00-\x19\s,[\]{}]/.test($)){let U=`Anchor must not contain whitespace or control characters: ${JSON.stringify($)}`;throw Error(U)}return!0}function i9($){let Z=new Set;return SZ.visit($,{Value(U,z){if(z.anchor)Z.add(z.anchor)}}),Z}function r9($,Z){for(let U=1;;++U){let z=`${$}${U}`;if(!Z.has(z))return z}}function gZ($,Z){let U=[],z=new Map,X=null;return{onAnchor:(Q)=>{U.push(Q),X??(X=i9($));let J=r9(Z,X);return X.add(J),J},setAnchors:()=>{for(let Q of U){let J=z.get(Q);if(typeof J==="object"&&J.anchor&&(s9.isScalar(J.node)||s9.isCollection(J.node)))J.node.anchor=J.anchor;else{let q=Error("Failed to resolve repeated object (this should not happen)");throw q.source=Q,q}}},sourceObjects:z}}yZ.anchorIsValid=EZ;yZ.anchorNames=i9;yZ.createNodeAnchors=gZ;yZ.findNewAnchor=r9});var O2=_((kZ)=>{function k0($,Z,U,z){if(z&&typeof z==="object")if(Array.isArray(z))for(let X=0,Q=z.length;X<Q;++X){let J=z[X],q=k0($,z,String(X),J);if(q===void 0)delete z[X];else if(q!==J)z[X]=q}else if(z instanceof Map)for(let X of Array.from(z.keys())){let Q=z.get(X),J=k0($,z,X,Q);if(J===void 0)z.delete(X);else if(J!==Q)z.set(X,J)}else if(z instanceof Set)for(let X of Array.from(z)){let Q=k0($,z,X,X);if(Q===void 0)z.delete(X);else if(Q!==X)z.delete(X),z.add(Q)}else for(let[X,Q]of Object.entries(z)){let J=k0($,z,X,Q);if(J===void 0)delete z[X];else if(J!==Q)z[X]=J}return $.call(Z,U,z)}kZ.applyReviver=k0});var o=_((pZ)=>{var mZ=C();function n9($,Z,U){if(Array.isArray($))return $.map((z,X)=>n9(z,String(X),U));if($&&typeof $.toJSON==="function"){if(!U||!mZ.hasAnchor($))return $.toJSON(Z,U);let z={aliasCount:0,count:1,res:void 0};U.anchors.set($,z),U.onCreate=(Q)=>{z.res=Q,delete U.onCreate};let X=$.toJSON(Z,U);if(U.onCreate)U.onCreate(X);return X}if(typeof $==="bigint"&&!U?.keep)return Number($);return $}pZ.toJS=n9});var M$=_((aZ)=>{var dZ=O2(),o9=C(),cZ=o();class t9{constructor($){Object.defineProperty(this,o9.NODE_TYPE,{value:$})}clone(){let $=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)$.range=this.range.slice();return $}toJS($,{mapAsMap:Z,maxAliasCount:U,onAnchor:z,reviver:X}={}){if(!o9.isDocument($))throw TypeError("A document argument is required");let Q={anchors:new Map,doc:$,keep:!0,mapAsMap:Z===!0,mapKeyWarned:!1,maxAliasCount:typeof U==="number"?U:100},J=cZ.toJS(this,"",Q);if(typeof z==="function")for(let{count:q,res:H}of Q.anchors.values())z(H,q);return typeof X==="function"?dZ.applyReviver(X,{"":J},"",J):J}}aZ.NodeBase=t9});var v0=_((tZ)=>{var iZ=R$(),rZ=u0(),M0=C(),nZ=M$(),oZ=o();class e9 extends nZ.NodeBase{constructor($){super(M0.ALIAS);this.source=$,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve($,Z){let U;if(Z?.aliasResolveCache)U=Z.aliasResolveCache;else if(U=[],rZ.visit($,{Node:(X,Q)=>{if(M0.isAlias(Q)||M0.hasAnchor(Q))U.push(Q)}}),Z)Z.aliasResolveCache=U;let z=void 0;for(let X of U){if(X===this)break;if(X.anchor===this.source)z=X}return z}toJSON($,Z){if(!Z)return{source:this.source};let{anchors:U,doc:z,maxAliasCount:X}=Z,Q=this.resolve(z,Z);if(!Q){let q=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(q)}let J=U.get(Q);if(!J)oZ.toJS(Q,null,Z),J=U.get(Q);if(J?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(X>=0){if(J.count+=1,J.aliasCount===0)J.aliasCount=T$(z,Q,U);if(J.count*J.aliasCount>X)throw ReferenceError("Excessive alias count indicates a resource exhaustion attack")}return J.res}toString($,Z,U){let z=`*${this.source}`;if($){if(iZ.anchorIsValid(this.source),$.options.verifyAliasOrder&&!$.anchors.has(this.source)){let X=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(X)}if($.implicitKey)return`${z} `}return z}}function T$($,Z,U){if(M0.isAlias(Z)){let z=Z.resolve($),X=U&&z&&U.get(z);return X?X.count*X.aliasCount:0}else if(M0.isCollection(Z)){let z=0;for(let X of Z.items){let Q=T$($,X,U);if(Q>z)z=Q}return z}else if(M0.isPair(Z)){let z=T$($,Z.key,U),X=T$($,Z.value,U);return Math.max(z,X)}return 1}tZ.Alias=e9});var g=_((X3)=>{var $3=C(),Z3=M$(),U3=o(),z3=($)=>!$||typeof $!=="function"&&typeof $!=="object";class J0 extends Z3.NodeBase{constructor($){super($3.SCALAR);this.value=$}toJSON($,Z){return Z?.keep?this.value:U3.toJS(this.value,$,Z)}toString(){return String(this.value)}}J0.BLOCK_FOLDED="BLOCK_FOLDED";J0.BLOCK_LITERAL="BLOCK_LITERAL";J0.PLAIN="PLAIN";J0.QUOTE_DOUBLE="QUOTE_DOUBLE";J0.QUOTE_SINGLE="QUOTE_SINGLE";X3.Scalar=J0;X3.isScalarValue=z3});var m0=_((B3)=>{var q3=v0(),q0=C(),$4=g(),H3="tag:yaml.org,2002:";function G3($,Z,U){if(Z){let z=U.filter((Q)=>Q.tag===Z),X=z.find((Q)=>!Q.format)??z[0];if(!X)throw Error(`Tag ${Z} not found`);return X}return U.find((z)=>z.identify?.($)&&!z.format)}function Y3($,Z,U){if(q0.isDocument($))$=$.contents;if(q0.isNode($))return $;if(q0.isPair($)){let Y=U.schema[q0.MAP].createNode?.(U.schema,null,U);return Y.items.push($),Y}if($ instanceof String||$ instanceof Number||$ instanceof Boolean||typeof BigInt<"u"&&$ instanceof BigInt)$=$.valueOf();let{aliasDuplicateObjects:z,onAnchor:X,onTagObj:Q,schema:J,sourceObjects:q}=U,H=void 0;if(z&&$&&typeof $==="object")if(H=q.get($),H)return H.anchor??(H.anchor=X($)),new q3.Alias(H.anchor);else H={anchor:null,node:null},q.set($,H);if(Z?.startsWith("!!"))Z=H3+Z.slice(2);let G=G3($,Z,J.tags);if(!G){if($&&typeof $.toJSON==="function")$=$.toJSON();if(!$||typeof $!=="object"){let Y=new $4.Scalar($);if(H)H.node=Y;return Y}G=$ instanceof Map?J[q0.MAP]:(Symbol.iterator in Object($))?J[q0.SEQ]:J[q0.MAP]}if(Q)Q(G),delete U.onTagObj;let W=G?.createNode?G.createNode(U.schema,$,U):typeof G?.nodeClass?.from==="function"?G.nodeClass.from(U.schema,$,U):new $4.Scalar($);if(Z)W.tag=Z;else if(!G.default)W.tag=G.tag;if(H)H.node=W;return W}B3.createNode=Y3});var P$=_((L3)=>{var W3=m0(),c=C(),D3=M$();function _2($,Z,U){let z=U;for(let X=Z.length-1;X>=0;--X){let Q=Z[X];if(typeof Q==="number"&&Number.isInteger(Q)&&Q>=0){let J=[];J[Q]=z,z=J}else z=new Map([[Q,z]])}return W3.createNode(z,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:$,sourceObjects:new Map})}var Z4=($)=>$==null||typeof $==="object"&&!!$[Symbol.iterator]().next().done;class U4 extends D3.NodeBase{constructor($,Z){super($);Object.defineProperty(this,"schema",{value:Z,configurable:!0,enumerable:!1,writable:!0})}clone($){let Z=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if($)Z.schema=$;if(Z.items=Z.items.map((U)=>c.isNode(U)||c.isPair(U)?U.clone($):U),this.range)Z.range=this.range.slice();return Z}addIn($,Z){if(Z4($))this.add(Z);else{let[U,...z]=$,X=this.get(U,!0);if(c.isCollection(X))X.addIn(z,Z);else if(X===void 0&&this.schema)this.set(U,_2(this.schema,z,Z));else throw Error(`Expected YAML collection at ${U}. Remaining path: ${z}`)}}deleteIn($){let[Z,...U]=$;if(U.length===0)return this.delete(Z);let z=this.get(Z,!0);if(c.isCollection(z))return z.deleteIn(U);else throw Error(`Expected YAML collection at ${Z}. Remaining path: ${U}`)}getIn($,Z){let[U,...z]=$,X=this.get(U,!0);if(z.length===0)return!Z&&c.isScalar(X)?X.value:X;else return c.isCollection(X)?X.getIn(z,Z):void 0}hasAllNullValues($){return this.items.every((Z)=>{if(!c.isPair(Z))return!1;let U=Z.value;return U==null||$&&c.isScalar(U)&&U.value==null&&!U.commentBefore&&!U.comment&&!U.tag})}hasIn($){let[Z,...U]=$;if(U.length===0)return this.has(Z);let z=this.get(Z,!0);return c.isCollection(z)?z.hasIn(U):!1}setIn($,Z){let[U,...z]=$;if(z.length===0)this.set(U,Z);else{let X=this.get(U,!0);if(c.isCollection(X))X.setIn(z,Z);else if(X===void 0&&this.schema)this.set(U,_2(this.schema,z,Z));else throw Error(`Expected YAML collection at ${U}. Remaining path: ${z}`)}}}L3.Collection=U4;L3.collectionFromPath=_2;L3.isEmptyPath=Z4});var p0=_((T3)=>{var R3=($)=>$.replace(/^(?!$)(?: $)?/gm,"#");function I2($,Z){if(/^\n+$/.test($))return $.substring(1);return Z?$.replace(/^(?! *$)/gm,Z):$}var M3=($,Z,U)=>$.endsWith(`
3
- `)?I2(U,Z):U.includes(`
1
+ import{createRequire as n6}from"node:module";var a6=Object.defineProperty;var I=($,Z)=>()=>(Z||$((Z={exports:{}}).exports,Z),Z.exports);var s6=($)=>$;function i6($,Z){this[$]=s6.bind(null,Z)}var r6=($,Z)=>{for(var U in Z)a6($,U,{get:Z[U],enumerable:!0,configurable:!0,set:i6.bind(Z,U)})};var f0=n6(import.meta.url);var b=I((_8)=>{var O9=Symbol.for("yaml.alias"),p2=Symbol.for("yaml.document"),_$=Symbol.for("yaml.map"),l2=Symbol.for("yaml.pair"),_9=Symbol.for("yaml.scalar"),D$=Symbol.for("yaml.seq"),s=Symbol.for("yaml.node.type"),G8=($)=>!!$&&typeof $==="object"&&$[s]===O9,Y8=($)=>!!$&&typeof $==="object"&&$[s]===p2,B8=($)=>!!$&&typeof $==="object"&&$[s]===_$,V8=($)=>!!$&&typeof $==="object"&&$[s]===l2,d2=($)=>!!$&&typeof $==="object"&&$[s]===_9,W8=($)=>!!$&&typeof $==="object"&&$[s]===D$;function c2($){if($&&typeof $==="object")switch($[s]){case _$:case D$:return!0}return!1}function L8($){if($&&typeof $==="object")switch($[s]){case O9:case _$:case _9:case D$:return!0}return!1}var O8=($)=>(d2($)||c2($))&&!!$.anchor;_8.ALIAS=O9;_8.DOC=p2;_8.MAP=_$;_8.NODE_TYPE=s;_8.PAIR=l2;_8.SCALAR=_9;_8.SEQ=D$;_8.hasAnchor=O8;_8.isAlias=G8;_8.isCollection=c2;_8.isDocument=Y8;_8.isMap=B8;_8.isNode=L8;_8.isPair=V8;_8.isScalar=d2;_8.isSeq=W8});var k0=I((g8)=>{var f=b(),x=Symbol("break visit"),a2=Symbol("skip children"),d=Symbol("remove node");function I$($,Z){let U=s2(Z);if(f.isDocument($)){if(I0(null,$.contents,U,Object.freeze([$]))===d)$.contents=null}else I0(null,$,U,Object.freeze([]))}I$.BREAK=x;I$.SKIP=a2;I$.REMOVE=d;function I0($,Z,U,X){let z=i2($,Z,U,X);if(f.isNode(z)||f.isPair(z))return r2($,X,z),I0($,z,U,X);if(typeof z!=="symbol"){if(f.isCollection(Z)){X=Object.freeze(X.concat(Z));for(let Q=0;Q<Z.items.length;++Q){let J=I0(Q,Z.items[Q],U,X);if(typeof J==="number")Q=J-1;else if(J===x)return x;else if(J===d)Z.items.splice(Q,1),Q-=1}}else if(f.isPair(Z)){X=Object.freeze(X.concat(Z));let Q=I0("key",Z.key,U,X);if(Q===x)return x;else if(Q===d)Z.key=null;let J=I0("value",Z.value,U,X);if(J===x)return x;else if(J===d)Z.value=null}}return z}async function R$($,Z){let U=s2(Z);if(f.isDocument($)){if(await R0(null,$.contents,U,Object.freeze([$]))===d)$.contents=null}else await R0(null,$,U,Object.freeze([]))}R$.BREAK=x;R$.SKIP=a2;R$.REMOVE=d;async function R0($,Z,U,X){let z=await i2($,Z,U,X);if(f.isNode(z)||f.isPair(z))return r2($,X,z),R0($,z,U,X);if(typeof z!=="symbol"){if(f.isCollection(Z)){X=Object.freeze(X.concat(Z));for(let Q=0;Q<Z.items.length;++Q){let J=await R0(Q,Z.items[Q],U,X);if(typeof J==="number")Q=J-1;else if(J===x)return x;else if(J===d)Z.items.splice(Q,1),Q-=1}}else if(f.isPair(Z)){X=Object.freeze(X.concat(Z));let Q=await R0("key",Z.key,U,X);if(Q===x)return x;else if(Q===d)Z.key=null;let J=await R0("value",Z.value,U,X);if(J===x)return x;else if(J===d)Z.value=null}}return z}function s2($){if(typeof $==="object"&&($.Collection||$.Node||$.Value))return Object.assign({Alias:$.Node,Map:$.Node,Scalar:$.Node,Seq:$.Node},$.Value&&{Map:$.Value,Scalar:$.Value,Seq:$.Value},$.Collection&&{Map:$.Collection,Seq:$.Collection},$);return $}function i2($,Z,U,X){if(typeof U==="function")return U($,Z,X);if(f.isMap(Z))return U.Map?.($,Z,X);if(f.isSeq(Z))return U.Seq?.($,Z,X);if(f.isPair(Z))return U.Pair?.($,Z,X);if(f.isScalar(Z))return U.Scalar?.($,Z,X);if(f.isAlias(Z))return U.Alias?.($,Z,X);return}function r2($,Z,U){let X=Z[Z.length-1];if(f.isCollection(X))X.items[$]=U;else if(f.isPair(X))if($==="key")X.key=U;else X.value=U;else if(f.isDocument(X))X.contents=U;else{let z=f.isAlias(X)?"alias":"scalar";throw Error(`Cannot replace node with ${z} parent`)}}g8.visit=I$;g8.visitAsync=R$});var D9=I((k8)=>{var n2=b(),x8=k0(),h8={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},u8=($)=>$.replace(/[!,[\]{}]/g,(Z)=>h8[Z]);class h{constructor($,Z){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},h.defaultYaml,$),this.tags=Object.assign({},h.defaultTags,Z)}clone(){let $=new h(this.yaml,this.tags);return $.docStart=this.docStart,$}atDocument(){let $=new h(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:h.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},h.defaultTags);break}return $}add($,Z){if(this.atNextDocument)this.yaml={explicit:h.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},h.defaultTags),this.atNextDocument=!1;let U=$.trim().split(/[ \t]+/),X=U.shift();switch(X){case"%TAG":{if(U.length!==2){if(Z(0,"%TAG directive should contain exactly two parts"),U.length<2)return!1}let[z,Q]=U;return this.tags[z]=Q,!0}case"%YAML":{if(this.yaml.explicit=!0,U.length!==1)return Z(0,"%YAML directive should contain exactly one part"),!1;let[z]=U;if(z==="1.1"||z==="1.2")return this.yaml.version=z,!0;else{let Q=/^\d+\.\d+$/.test(z);return Z(6,`Unsupported YAML version ${z}`,Q),!1}}default:return Z(0,`Unknown directive ${X}`,!0),!1}}tagName($,Z){if($==="!")return"!";if($[0]!=="!")return Z(`Not a valid tag: ${$}`),null;if($[1]==="<"){let Q=$.slice(2,-1);if(Q==="!"||Q==="!!")return Z(`Verbatim tags aren't resolved, so ${$} is invalid.`),null;if($[$.length-1]!==">")Z("Verbatim tags must end with a >");return Q}let[,U,X]=$.match(/^(.*!)([^!]*)$/s);if(!X)Z(`The ${$} tag has no suffix`);let z=this.tags[U];if(z)try{return z+decodeURIComponent(X)}catch(Q){return Z(String(Q)),null}if(U==="!")return $;return Z(`Could not resolve tag: ${$}`),null}tagString($){for(let[Z,U]of Object.entries(this.tags))if($.startsWith(U))return Z+u8($.substring(U.length));return $[0]==="!"?$:`!<${$}>`}toString($){let Z=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],U=Object.entries(this.tags),X;if($&&U.length>0&&n2.isNode($.contents)){let z={};x8.visit($.contents,(Q,J)=>{if(n2.isNode(J)&&J.tag)z[J.tag]=!0}),X=Object.keys(z)}else X=[];for(let[z,Q]of U){if(z==="!!"&&Q==="tag:yaml.org,2002:")continue;if(!$||X.some((J)=>J.startsWith(Q)))Z.push(`%TAG ${z} ${Q}`)}return Z.join(`
2
+ `)}}h.defaultYaml={explicit:!1,version:"1.2"};h.defaultTags={"!!":"tag:yaml.org,2002:"};k8.Directives=h});var M$=I((d8)=>{var o2=b(),m8=k0();function p8($){if(/[\x00-\x19\s,[\]{}]/.test($)){let U=`Anchor must not contain whitespace or control characters: ${JSON.stringify($)}`;throw Error(U)}return!0}function t2($){let Z=new Set;return m8.visit($,{Value(U,X){if(X.anchor)Z.add(X.anchor)}}),Z}function e2($,Z){for(let U=1;;++U){let X=`${$}${U}`;if(!Z.has(X))return X}}function l8($,Z){let U=[],X=new Map,z=null;return{onAnchor:(Q)=>{U.push(Q),z??(z=t2($));let J=e2(Z,z);return z.add(J),J},setAnchors:()=>{for(let Q of U){let J=X.get(Q);if(typeof J==="object"&&J.anchor&&(o2.isScalar(J.node)||o2.isCollection(J.node)))J.node.anchor=J.anchor;else{let q=Error("Failed to resolve repeated object (this should not happen)");throw q.source=Q,q}}},sourceObjects:X}}d8.anchorIsValid=p8;d8.anchorNames=t2;d8.createNodeAnchors=l8;d8.findNewAnchor=e2});var I9=I((r8)=>{function v0($,Z,U,X){if(X&&typeof X==="object")if(Array.isArray(X))for(let z=0,Q=X.length;z<Q;++z){let J=X[z],q=v0($,X,String(z),J);if(q===void 0)delete X[z];else if(q!==J)X[z]=q}else if(X instanceof Map)for(let z of Array.from(X.keys())){let Q=X.get(z),J=v0($,X,z,Q);if(J===void 0)X.delete(z);else if(J!==Q)X.set(z,J)}else if(X instanceof Set)for(let z of Array.from(X)){let Q=v0($,X,z,z);if(Q===void 0)X.delete(z);else if(Q!==z)X.delete(z),X.add(Q)}else for(let[z,Q]of Object.entries(X)){let J=v0($,X,z,Q);if(J===void 0)delete X[z];else if(J!==Q)X[z]=J}return $.call(Z,U,X)}r8.applyReviver=v0});var o=I((t8)=>{var o8=b();function $3($,Z,U){if(Array.isArray($))return $.map((X,z)=>$3(X,String(z),U));if($&&typeof $.toJSON==="function"){if(!U||!o8.hasAnchor($))return $.toJSON(Z,U);let X={aliasCount:0,count:1,res:void 0};U.anchors.set($,X),U.onCreate=(Q)=>{X.res=Q,delete U.onCreate};let z=$.toJSON(Z,U);if(U.onCreate)U.onCreate(z);return z}if(typeof $==="bigint"&&!U?.keep)return Number($);return $}t8.toJS=$3});var P$=I((UZ)=>{var $Z=I9(),Z3=b(),ZZ=o();class U3{constructor($){Object.defineProperty(this,Z3.NODE_TYPE,{value:$})}clone(){let $=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)$.range=this.range.slice();return $}toJS($,{mapAsMap:Z,maxAliasCount:U,onAnchor:X,reviver:z}={}){if(!Z3.isDocument($))throw TypeError("A document argument is required");let Q={anchors:new Map,doc:$,keep:!0,mapAsMap:Z===!0,mapKeyWarned:!1,maxAliasCount:typeof U==="number"?U:100},J=ZZ.toJS(this,"",Q);if(typeof X==="function")for(let{count:q,res:H}of Q.anchors.values())X(H,q);return typeof z==="function"?$Z.applyReviver(z,{"":J},"",J):J}}UZ.NodeBase=U3});var m0=I((HZ)=>{var zZ=M$(),QZ=k0(),M0=b(),JZ=P$(),qZ=o();class X3 extends JZ.NodeBase{constructor($){super(M0.ALIAS);this.source=$,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve($,Z){let U;if(Z?.aliasResolveCache)U=Z.aliasResolveCache;else if(U=[],QZ.visit($,{Node:(z,Q)=>{if(M0.isAlias(Q)||M0.hasAnchor(Q))U.push(Q)}}),Z)Z.aliasResolveCache=U;let X=void 0;for(let z of U){if(z===this)break;if(z.anchor===this.source)X=z}return X}toJSON($,Z){if(!Z)return{source:this.source};let{anchors:U,doc:X,maxAliasCount:z}=Z,Q=this.resolve(X,Z);if(!Q){let q=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(q)}let J=U.get(Q);if(!J)qZ.toJS(Q,null,Z),J=U.get(Q);if(J?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(z>=0){if(J.count+=1,J.aliasCount===0)J.aliasCount=F$(X,Q,U);if(J.count*J.aliasCount>z)throw ReferenceError("Excessive alias count indicates a resource exhaustion attack")}return J.res}toString($,Z,U){let X=`*${this.source}`;if($){if(zZ.anchorIsValid(this.source),$.options.verifyAliasOrder&&!$.anchors.has(this.source)){let z=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(z)}if($.implicitKey)return`${X} `}return X}}function F$($,Z,U){if(M0.isAlias(Z)){let X=Z.resolve($),z=U&&X&&U.get(X);return z?z.count*z.aliasCount:0}else if(M0.isCollection(Z)){let X=0;for(let z of Z.items){let Q=F$($,z,U);if(Q>X)X=Q}return X}else if(M0.isPair(Z)){let X=F$($,Z.key,U),z=F$($,Z.value,U);return Math.max(X,z)}return 1}HZ.Alias=X3});var g=I((LZ)=>{var YZ=b(),BZ=P$(),VZ=o(),WZ=($)=>!$||typeof $!=="function"&&typeof $!=="object";class J0 extends BZ.NodeBase{constructor($){super(YZ.SCALAR);this.value=$}toJSON($,Z){return Z?.keep?this.value:VZ.toJS(this.value,$,Z)}toString(){return String(this.value)}}J0.BLOCK_FOLDED="BLOCK_FOLDED";J0.BLOCK_LITERAL="BLOCK_LITERAL";J0.PLAIN="PLAIN";J0.QUOTE_DOUBLE="QUOTE_DOUBLE";J0.QUOTE_SINGLE="QUOTE_SINGLE";LZ.Scalar=J0;LZ.isScalarValue=WZ});var p0=I((PZ)=>{var DZ=m0(),q0=b(),z3=g(),IZ="tag:yaml.org,2002:";function RZ($,Z,U){if(Z){let X=U.filter((Q)=>Q.tag===Z),z=X.find((Q)=>!Q.format)??X[0];if(!z)throw Error(`Tag ${Z} not found`);return z}return U.find((X)=>X.identify?.($)&&!X.format)}function MZ($,Z,U){if(q0.isDocument($))$=$.contents;if(q0.isNode($))return $;if(q0.isPair($)){let Y=U.schema[q0.MAP].createNode?.(U.schema,null,U);return Y.items.push($),Y}if($ instanceof String||$ instanceof Number||$ instanceof Boolean||typeof BigInt<"u"&&$ instanceof BigInt)$=$.valueOf();let{aliasDuplicateObjects:X,onAnchor:z,onTagObj:Q,schema:J,sourceObjects:q}=U,H=void 0;if(X&&$&&typeof $==="object")if(H=q.get($),H)return H.anchor??(H.anchor=z($)),new DZ.Alias(H.anchor);else H={anchor:null,node:null},q.set($,H);if(Z?.startsWith("!!"))Z=IZ+Z.slice(2);let G=RZ($,Z,J.tags);if(!G){if($&&typeof $.toJSON==="function")$=$.toJSON();if(!$||typeof $!=="object"){let Y=new z3.Scalar($);if(H)H.node=Y;return Y}G=$ instanceof Map?J[q0.MAP]:(Symbol.iterator in Object($))?J[q0.SEQ]:J[q0.MAP]}if(Q)Q(G),delete U.onTagObj;let W=G?.createNode?G.createNode(U.schema,$,U):typeof G?.nodeClass?.from==="function"?G.nodeClass.from(U.schema,$,U):new z3.Scalar($);if(Z)W.tag=Z;else if(!G.default)W.tag=G.tag;if(H)H.node=W;return W}PZ.createNode=MZ});var T$=I((AZ)=>{var TZ=p0(),c=b(),KZ=P$();function R9($,Z,U){let X=U;for(let z=Z.length-1;z>=0;--z){let Q=Z[z];if(typeof Q==="number"&&Number.isInteger(Q)&&Q>=0){let J=[];J[Q]=X,X=J}else X=new Map([[Q,X]])}return TZ.createNode(X,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:$,sourceObjects:new Map})}var Q3=($)=>$==null||typeof $==="object"&&!!$[Symbol.iterator]().next().done;class J3 extends KZ.NodeBase{constructor($,Z){super($);Object.defineProperty(this,"schema",{value:Z,configurable:!0,enumerable:!1,writable:!0})}clone($){let Z=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if($)Z.schema=$;if(Z.items=Z.items.map((U)=>c.isNode(U)||c.isPair(U)?U.clone($):U),this.range)Z.range=this.range.slice();return Z}addIn($,Z){if(Q3($))this.add(Z);else{let[U,...X]=$,z=this.get(U,!0);if(c.isCollection(z))z.addIn(X,Z);else if(z===void 0&&this.schema)this.set(U,R9(this.schema,X,Z));else throw Error(`Expected YAML collection at ${U}. Remaining path: ${X}`)}}deleteIn($){let[Z,...U]=$;if(U.length===0)return this.delete(Z);let X=this.get(Z,!0);if(c.isCollection(X))return X.deleteIn(U);else throw Error(`Expected YAML collection at ${Z}. Remaining path: ${U}`)}getIn($,Z){let[U,...X]=$,z=this.get(U,!0);if(X.length===0)return!Z&&c.isScalar(z)?z.value:z;else return c.isCollection(z)?z.getIn(X,Z):void 0}hasAllNullValues($){return this.items.every((Z)=>{if(!c.isPair(Z))return!1;let U=Z.value;return U==null||$&&c.isScalar(U)&&U.value==null&&!U.commentBefore&&!U.comment&&!U.tag})}hasIn($){let[Z,...U]=$;if(U.length===0)return this.has(Z);let X=this.get(Z,!0);return c.isCollection(X)?X.hasIn(U):!1}setIn($,Z){let[U,...X]=$;if(X.length===0)this.set(U,Z);else{let z=this.get(U,!0);if(c.isCollection(z))z.setIn(X,Z);else if(z===void 0&&this.schema)this.set(U,R9(this.schema,X,Z));else throw Error(`Expected YAML collection at ${U}. Remaining path: ${X}`)}}}AZ.Collection=J3;AZ.collectionFromPath=R9;AZ.isEmptyPath=Q3});var l0=I((SZ)=>{var CZ=($)=>$.replace(/^(?!$)(?: $)?/gm,"#");function M9($,Z){if(/^\n+$/.test($))return $.substring(1);return Z?$.replace(/^(?! *$)/gm,Z):$}var jZ=($,Z,U)=>$.endsWith(`
3
+ `)?M9(U,Z):U.includes(`
4
4
  `)?`
5
- `+I2(U,Z):($.endsWith(" ")?"":" ")+U;T3.indentComment=I2;T3.lineComment=M3;T3.stringifyComment=R3});var X4=_((N3)=>{function A3($,Z,U="flow",{indentAtStart:z,lineWidth:X=80,minContentWidth:Q=20,onFold:J,onOverflow:q}={}){if(!X||X<0)return $;if(X<Q)Q=0;let H=Math.max(1+Q,1+X-Z.length);if($.length<=H)return $;let G=[],W={},Y=X-Z.length;if(typeof z==="number")if(z>X-Math.max(2,Q))G.push(0);else Y=X-z;let B=void 0,L=void 0,O=!1,V=-1,D=-1,R=-1;if(U==="block"){if(V=z4($,V,Z.length),V!==-1)Y=V+H}for(let K;K=$[V+=1];){if(U==="quoted"&&K==="\\"){switch(D=V,$[V+1]){case"x":V+=3;break;case"u":V+=5;break;case"U":V+=9;break;default:V+=1}R=V}if(K===`
6
- `){if(U==="block")V=z4($,V,Z.length);Y=V+Z.length+H,B=void 0}else{if(K===" "&&L&&L!==" "&&L!==`
7
- `&&L!=="\t"){let A=$[V+1];if(A&&A!==" "&&A!==`
8
- `&&A!=="\t")B=V}if(V>=Y)if(B)G.push(B),Y=B+H,B=void 0;else if(U==="quoted"){while(L===" "||L==="\t")L=K,K=$[V+=1],O=!0;let A=V>R+1?V-2:D-1;if(W[A])return $;G.push(A),W[A]=!0,Y=A+H,B=void 0}else O=!0}L=K}if(O&&q)q();if(G.length===0)return $;if(J)J();let P=$.slice(0,G[0]);for(let K=0;K<G.length;++K){let A=G[K],F=G[K+1]||$.length;if(A===0)P=`
9
- ${Z}${$.slice(0,F)}`;else{if(U==="quoted"&&W[A])P+=`${$[A]}\\`;P+=`
10
- ${Z}${$.slice(A+1,F)}`}}return P}function z4($,Z,U){let z=Z,X=Z+1,Q=$[X];while(Q===" "||Q==="\t")if(Z<X+U)Q=$[++Z];else{do Q=$[++Z];while(Q&&Q!==`
11
- `);z=Z,X=Z+1,Q=$[X]}return z}N3.FOLD_BLOCK="block";N3.FOLD_FLOW="flow";N3.FOLD_QUOTED="quoted";N3.foldFlowLines=A3});var d0=_((y3)=>{var k=g(),t=X4(),K$=($,Z)=>({indentAtStart:Z?$.indent.length:$.indentAtStart,lineWidth:$.options.lineWidth,minContentWidth:$.options.minContentWidth}),A$=($)=>/^(%|---|\.\.\.)/m.test($);function S3($,Z,U){if(!Z||Z<0)return!1;let z=Z-U,X=$.length;if(X<=z)return!1;for(let Q=0,J=0;Q<X;++Q)if($[Q]===`
12
- `){if(Q-J>z)return!0;if(J=Q+1,X-J<=z)return!1}return!0}function l0($,Z){let U=JSON.stringify($);if(Z.options.doubleQuotedAsJSON)return U;let{implicitKey:z}=Z,X=Z.options.doubleQuotedMinMultiLineLength,Q=Z.indent||(A$($)?" ":""),J="",q=0;for(let H=0,G=U[H];G;G=U[++H]){if(G===" "&&U[H+1]==="\\"&&U[H+2]==="n")J+=U.slice(q,H)+"\\ ",H+=1,q=H,G="\\";if(G==="\\")switch(U[H+1]){case"u":{J+=U.slice(q,H);let W=U.substr(H+2,4);switch(W){case"0000":J+="\\0";break;case"0007":J+="\\a";break;case"000b":J+="\\v";break;case"001b":J+="\\e";break;case"0085":J+="\\N";break;case"00a0":J+="\\_";break;case"2028":J+="\\L";break;case"2029":J+="\\P";break;default:if(W.substr(0,2)==="00")J+="\\x"+W.substr(2);else J+=U.substr(H,6)}H+=5,q=H+1}break;case"n":if(z||U[H+2]==='"'||U.length<X)H+=1;else{J+=U.slice(q,H)+`
5
+ `+M9(U,Z):($.endsWith(" ")?"":" ")+U;SZ.indentComment=M9;SZ.lineComment=jZ;SZ.stringifyComment=CZ});var H3=I((xZ)=>{function yZ($,Z,U="flow",{indentAtStart:X,lineWidth:z=80,minContentWidth:Q=20,onFold:J,onOverflow:q}={}){if(!z||z<0)return $;if(z<Q)Q=0;let H=Math.max(1+Q,1+z-Z.length);if($.length<=H)return $;let G=[],W={},Y=z-Z.length;if(typeof X==="number")if(X>z-Math.max(2,Q))G.push(0);else Y=z-X;let B=void 0,O=void 0,_=!1,V=-1,L=-1,R=-1;if(U==="block"){if(V=q3($,V,Z.length),V!==-1)Y=V+H}for(let T;T=$[V+=1];){if(U==="quoted"&&T==="\\"){switch(L=V,$[V+1]){case"x":V+=3;break;case"u":V+=5;break;case"U":V+=9;break;default:V+=1}R=V}if(T===`
6
+ `){if(U==="block")V=q3($,V,Z.length);Y=V+Z.length+H,B=void 0}else{if(T===" "&&O&&O!==" "&&O!==`
7
+ `&&O!=="\t"){let A=$[V+1];if(A&&A!==" "&&A!==`
8
+ `&&A!=="\t")B=V}if(V>=Y)if(B)G.push(B),Y=B+H,B=void 0;else if(U==="quoted"){while(O===" "||O==="\t")O=T,T=$[V+=1],_=!0;let A=V>R+1?V-2:L-1;if(W[A])return $;G.push(A),W[A]=!0,Y=A+H,B=void 0}else _=!0}O=T}if(_&&q)q();if(G.length===0)return $;if(J)J();let M=$.slice(0,G[0]);for(let T=0;T<G.length;++T){let A=G[T],K=G[T+1]||$.length;if(A===0)M=`
9
+ ${Z}${$.slice(0,K)}`;else{if(U==="quoted"&&W[A])M+=`${$[A]}\\`;M+=`
10
+ ${Z}${$.slice(A+1,K)}`}}return M}function q3($,Z,U){let X=Z,z=Z+1,Q=$[z];while(Q===" "||Q==="\t")if(Z<z+U)Q=$[++Z];else{do Q=$[++Z];while(Q&&Q!==`
11
+ `);X=Z,z=Z+1,Q=$[z]}return X}xZ.FOLD_BLOCK="block";xZ.FOLD_FLOW="flow";xZ.FOLD_QUOTED="quoted";xZ.foldFlowLines=yZ});var c0=I((dZ)=>{var k=g(),t=H3(),A$=($,Z)=>({indentAtStart:Z?$.indent.length:$.indentAtStart,lineWidth:$.options.lineWidth,minContentWidth:$.options.minContentWidth}),N$=($)=>/^(%|---|\.\.\.)/m.test($);function mZ($,Z,U){if(!Z||Z<0)return!1;let X=Z-U,z=$.length;if(z<=X)return!1;for(let Q=0,J=0;Q<z;++Q)if($[Q]===`
12
+ `){if(Q-J>X)return!0;if(J=Q+1,z-J<=X)return!1}return!0}function d0($,Z){let U=JSON.stringify($);if(Z.options.doubleQuotedAsJSON)return U;let{implicitKey:X}=Z,z=Z.options.doubleQuotedMinMultiLineLength,Q=Z.indent||(N$($)?" ":""),J="",q=0;for(let H=0,G=U[H];G;G=U[++H]){if(G===" "&&U[H+1]==="\\"&&U[H+2]==="n")J+=U.slice(q,H)+"\\ ",H+=1,q=H,G="\\";if(G==="\\")switch(U[H+1]){case"u":{J+=U.slice(q,H);let W=U.substr(H+2,4);switch(W){case"0000":J+="\\0";break;case"0007":J+="\\a";break;case"000b":J+="\\v";break;case"001b":J+="\\e";break;case"0085":J+="\\N";break;case"00a0":J+="\\_";break;case"2028":J+="\\L";break;case"2029":J+="\\P";break;default:if(W.substr(0,2)==="00")J+="\\x"+W.substr(2);else J+=U.substr(H,6)}H+=5,q=H+1}break;case"n":if(X||U[H+2]==='"'||U.length<z)H+=1;else{J+=U.slice(q,H)+`
13
13
 
14
14
  `;while(U[H+2]==="\\"&&U[H+3]==="n"&&U[H+4]!=='"')J+=`
15
- `,H+=2;if(J+=Q,U[H+2]===" ")J+="\\";H+=1,q=H+1}break;default:H+=1}}return J=q?J+U.slice(q):U,z?J:t.foldFlowLines(J,Q,t.FOLD_QUOTED,K$(Z,!1))}function R2($,Z){if(Z.options.singleQuote===!1||Z.implicitKey&&$.includes(`
16
- `)||/[ \t]\n|\n[ \t]/.test($))return l0($,Z);let U=Z.indent||(A$($)?" ":""),z="'"+$.replace(/'/g,"''").replace(/\n+/g,`$&
17
- ${U}`)+"'";return Z.implicitKey?z:t.foldFlowLines(z,U,t.FOLD_FLOW,K$(Z,!1))}function T0($,Z){let{singleQuote:U}=Z.options,z;if(U===!1)z=l0;else{let X=$.includes('"'),Q=$.includes("'");if(X&&!Q)z=R2;else if(Q&&!X)z=l0;else z=U?R2:l0}return z($,Z)}var M2;try{M2=new RegExp(`(^|(?<!
15
+ `,H+=2;if(J+=Q,U[H+2]===" ")J+="\\";H+=1,q=H+1}break;default:H+=1}}return J=q?J+U.slice(q):U,X?J:t.foldFlowLines(J,Q,t.FOLD_QUOTED,A$(Z,!1))}function P9($,Z){if(Z.options.singleQuote===!1||Z.implicitKey&&$.includes(`
16
+ `)||/[ \t]\n|\n[ \t]/.test($))return d0($,Z);let U=Z.indent||(N$($)?" ":""),X="'"+$.replace(/'/g,"''").replace(/\n+/g,`$&
17
+ ${U}`)+"'";return Z.implicitKey?X:t.foldFlowLines(X,U,t.FOLD_FLOW,A$(Z,!1))}function P0($,Z){let{singleQuote:U}=Z.options,X;if(U===!1)X=d0;else{let z=$.includes('"'),Q=$.includes("'");if(z&&!Q)X=P9;else if(Q&&!z)X=d0;else X=U?P9:d0}return X($,Z)}var F9;try{F9=new RegExp(`(^|(?<!
18
18
  ))
19
19
  +(?!
20
- |$)`,"g")}catch{M2=/\n+(?!\n|$)/g}function F$({comment:$,type:Z,value:U},z,X,Q){let{blockQuote:J,commentString:q,lineWidth:H}=z.options;if(!J||/\n[\t ]+$/.test(U))return T0(U,z);let G=z.indent||(z.forceBlockIndent||A$(U)?" ":""),W=J==="literal"?!0:J==="folded"||Z===k.Scalar.BLOCK_FOLDED?!1:Z===k.Scalar.BLOCK_LITERAL?!0:!S3(U,H,G.length);if(!U)return W?`|
20
+ |$)`,"g")}catch{F9=/\n+(?!\n|$)/g}function K$({comment:$,type:Z,value:U},X,z,Q){let{blockQuote:J,commentString:q,lineWidth:H}=X.options;if(!J||/\n[\t ]+$/.test(U))return P0(U,X);let G=X.indent||(X.forceBlockIndent||N$(U)?" ":""),W=J==="literal"?!0:J==="folded"||Z===k.Scalar.BLOCK_FOLDED?!1:Z===k.Scalar.BLOCK_LITERAL?!0:!mZ(U,H,G.length);if(!U)return W?`|
21
21
  `:`>
22
- `;let Y,B;for(B=U.length;B>0;--B){let F=U[B-1];if(F!==`
23
- `&&F!=="\t"&&F!==" ")break}let L=U.substring(B),O=L.indexOf(`
24
- `);if(O===-1)Y="-";else if(U===L||O!==L.length-1){if(Y="+",Q)Q()}else Y="";if(L){if(U=U.slice(0,-L.length),L[L.length-1]===`
25
- `)L=L.slice(0,-1);L=L.replace(M2,`$&${G}`)}let V=!1,D,R=-1;for(D=0;D<U.length;++D){let F=U[D];if(F===" ")V=!0;else if(F===`
26
- `)R=D;else break}let P=U.substring(0,R<D?R+1:D);if(P)U=U.substring(P.length),P=P.replace(/\n+/g,`$&${G}`);let A=(V?G?"2":"1":"")+Y;if($){if(A+=" "+q($.replace(/ ?[\r\n]+/g," ")),X)X()}if(!W){let F=U.replace(/\n+/g,`
27
- $&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${G}`),N=!1,w=K$(z,!0);if(J!=="folded"&&Z!==k.Scalar.BLOCK_FOLDED)w.onOverflow=()=>{N=!0};let T=t.foldFlowLines(`${P}${F}${L}`,G,t.FOLD_BLOCK,w);if(!N)return`>${A}
28
- ${G}${T}`}return U=U.replace(/\n+/g,`$&${G}`),`|${A}
29
- ${G}${P}${U}${L}`}function E3($,Z,U,z){let{type:X,value:Q}=$,{actualString:J,implicitKey:q,indent:H,indentStep:G,inFlow:W}=Z;if(q&&Q.includes(`
30
- `)||W&&/[[\]{},]/.test(Q))return T0(Q,Z);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(Q))return q||W||!Q.includes(`
31
- `)?T0(Q,Z):F$($,Z,U,z);if(!q&&!W&&X!==k.Scalar.PLAIN&&Q.includes(`
32
- `))return F$($,Z,U,z);if(A$(Q)){if(H==="")return Z.forceBlockIndent=!0,F$($,Z,U,z);else if(q&&H===G)return T0(Q,Z)}let Y=Q.replace(/\n+/g,`$&
33
- ${H}`);if(J){let B=(V)=>V.default&&V.tag!=="tag:yaml.org,2002:str"&&V.test?.test(Y),{compat:L,tags:O}=Z.doc.schema;if(O.some(B)||L?.some(B))return T0(Q,Z)}return q?Y:t.foldFlowLines(Y,H,t.FOLD_FLOW,K$(Z,!1))}function g3($,Z,U,z){let{implicitKey:X,inFlow:Q}=Z,J=typeof $.value==="string"?$:Object.assign({},$,{value:String($.value)}),{type:q}=$;if(q!==k.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(J.value))q=k.Scalar.QUOTE_DOUBLE}let H=(W)=>{switch(W){case k.Scalar.BLOCK_FOLDED:case k.Scalar.BLOCK_LITERAL:return X||Q?T0(J.value,Z):F$(J,Z,U,z);case k.Scalar.QUOTE_DOUBLE:return l0(J.value,Z);case k.Scalar.QUOTE_SINGLE:return R2(J.value,Z);case k.Scalar.PLAIN:return E3(J,Z,U,z);default:return null}},G=H(q);if(G===null){let{defaultKeyType:W,defaultStringType:Y}=Z.options,B=X&&W||Y;if(G=H(B),G===null)throw Error(`Unsupported default string type ${B}`)}return G}y3.stringifyString=g3});var c0=_((l3)=>{var x3=R$(),e=C(),h3=p0(),u3=d0();function k3($,Z){let U=Object.assign({blockQuote:!0,commentString:h3.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},$.schema.toStringOptions,Z),z;switch(U.collectionStyle){case"block":z=!1;break;case"flow":z=!0;break;default:z=null}return{anchors:new Set,doc:$,flowCollectionPadding:U.flowCollectionPadding?" ":"",indent:"",indentStep:typeof U.indent==="number"?" ".repeat(U.indent):" ",inFlow:z,options:U}}function v3($,Z){if(Z.tag){let X=$.filter((Q)=>Q.tag===Z.tag);if(X.length>0)return X.find((Q)=>Q.format===Z.format)??X[0]}let U=void 0,z;if(e.isScalar(Z)){z=Z.value;let X=$.filter((Q)=>Q.identify?.(z));if(X.length>1){let Q=X.filter((J)=>J.test);if(Q.length>0)X=Q}U=X.find((Q)=>Q.format===Z.format)??X.find((Q)=>!Q.format)}else z=Z,U=$.find((X)=>X.nodeClass&&z instanceof X.nodeClass);if(!U){let X=z?.constructor?.name??(z===null?"null":typeof z);throw Error(`Tag not resolved for ${X} value`)}return U}function m3($,Z,{anchors:U,doc:z}){if(!z.directives)return"";let X=[],Q=(e.isScalar($)||e.isCollection($))&&$.anchor;if(Q&&x3.anchorIsValid(Q))U.add(Q),X.push(`&${Q}`);let J=$.tag??(Z.default?null:Z.tag);if(J)X.push(z.directives.tagString(J));return X.join(" ")}function p3($,Z,U,z){if(e.isPair($))return $.toString(Z,U,z);if(e.isAlias($)){if(Z.doc.directives)return $.toString(Z);if(Z.resolvedAliases?.has($))throw TypeError("Cannot stringify circular structure without alias nodes");else{if(Z.resolvedAliases)Z.resolvedAliases.add($);else Z.resolvedAliases=new Set([$]);$=$.resolve(Z.doc)}}let X=void 0,Q=e.isNode($)?$:Z.doc.createNode($,{onTagObj:(H)=>X=H});X??(X=v3(Z.doc.schema.tags,Q));let J=m3(Q,X,Z);if(J.length>0)Z.indentAtStart=(Z.indentAtStart??0)+J.length+1;let q=typeof X.stringify==="function"?X.stringify(Q,Z,U,z):e.isScalar(Q)?u3.stringifyString(Q,Z,U,z):Q.toString(Z,U,z);if(!J)return q;return e.isScalar(Q)||q[0]==="{"||q[0]==="["?`${J} ${q}`:`${J}
34
- ${Z.indent}${q}`}l3.createStringifyContext=k3;l3.stringify=p3});var q4=_((s3)=>{var i=C(),Q4=g(),J4=c0(),a0=p0();function a3({key:$,value:Z},U,z,X){let{allNullValues:Q,doc:J,indent:q,indentStep:H,options:{commentString:G,indentSeq:W,simpleKeys:Y}}=U,B=i.isNode($)&&$.comment||null;if(Y){if(B)throw Error("With simple keys, key nodes cannot have comments");if(i.isCollection($)||!i.isNode($)&&typeof $==="object")throw Error("With simple keys, collection cannot be used as a key value")}let L=!Y&&(!$||B&&Z==null&&!U.inFlow||i.isCollection($)||(i.isScalar($)?$.type===Q4.Scalar.BLOCK_FOLDED||$.type===Q4.Scalar.BLOCK_LITERAL:typeof $==="object"));U=Object.assign({},U,{allNullValues:!1,implicitKey:!L&&(Y||!Q),indent:q+H});let O=!1,V=!1,D=J4.stringify($,U,()=>O=!0,()=>V=!0);if(!L&&!U.inFlow&&D.length>1024){if(Y)throw Error("With simple keys, single line scalar must not span more than 1024 characters");L=!0}if(U.inFlow){if(Q||Z==null){if(O&&z)z();return D===""?"?":L?`? ${D}`:D}}else if(Q&&!Y||Z==null&&L){if(D=`? ${D}`,B&&!O)D+=a0.lineComment(D,U.indent,G(B));else if(V&&X)X();return D}if(O)B=null;if(L){if(B)D+=a0.lineComment(D,U.indent,G(B));D=`? ${D}
35
- ${q}:`}else if(D=`${D}:`,B)D+=a0.lineComment(D,U.indent,G(B));let R,P,K;if(i.isNode(Z))R=!!Z.spaceBefore,P=Z.commentBefore,K=Z.comment;else if(R=!1,P=null,K=null,Z&&typeof Z==="object")Z=J.createNode(Z);if(U.implicitKey=!1,!L&&!B&&i.isScalar(Z))U.indentAtStart=D.length+1;if(V=!1,!W&&H.length>=2&&!U.inFlow&&!L&&i.isSeq(Z)&&!Z.flow&&!Z.tag&&!Z.anchor)U.indent=U.indent.substring(2);let A=!1,F=J4.stringify(Z,U,()=>A=!0,()=>V=!0),N=" ";if(B||R||P){if(N=R?`
36
- `:"",P){let w=G(P);N+=`
37
- ${a0.indentComment(w,U.indent)}`}if(F===""&&!U.inFlow){if(N===`
38
- `&&K)N=`
22
+ `;let Y,B;for(B=U.length;B>0;--B){let K=U[B-1];if(K!==`
23
+ `&&K!=="\t"&&K!==" ")break}let O=U.substring(B),_=O.indexOf(`
24
+ `);if(_===-1)Y="-";else if(U===O||_!==O.length-1){if(Y="+",Q)Q()}else Y="";if(O){if(U=U.slice(0,-O.length),O[O.length-1]===`
25
+ `)O=O.slice(0,-1);O=O.replace(F9,`$&${G}`)}let V=!1,L,R=-1;for(L=0;L<U.length;++L){let K=U[L];if(K===" ")V=!0;else if(K===`
26
+ `)R=L;else break}let M=U.substring(0,R<L?R+1:L);if(M)U=U.substring(M.length),M=M.replace(/\n+/g,`$&${G}`);let A=(V?G?"2":"1":"")+Y;if($){if(A+=" "+q($.replace(/ ?[\r\n]+/g," ")),z)z()}if(!W){let K=U.replace(/\n+/g,`
27
+ $&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${G}`),N=!1,C=A$(X,!0);if(J!=="folded"&&Z!==k.Scalar.BLOCK_FOLDED)C.onOverflow=()=>{N=!0};let D=t.foldFlowLines(`${M}${K}${O}`,G,t.FOLD_BLOCK,C);if(!N)return`>${A}
28
+ ${G}${D}`}return U=U.replace(/\n+/g,`$&${G}`),`|${A}
29
+ ${G}${M}${U}${O}`}function pZ($,Z,U,X){let{type:z,value:Q}=$,{actualString:J,implicitKey:q,indent:H,indentStep:G,inFlow:W}=Z;if(q&&Q.includes(`
30
+ `)||W&&/[[\]{},]/.test(Q))return P0(Q,Z);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(Q))return q||W||!Q.includes(`
31
+ `)?P0(Q,Z):K$($,Z,U,X);if(!q&&!W&&z!==k.Scalar.PLAIN&&Q.includes(`
32
+ `))return K$($,Z,U,X);if(N$(Q)){if(H==="")return Z.forceBlockIndent=!0,K$($,Z,U,X);else if(q&&H===G)return P0(Q,Z)}let Y=Q.replace(/\n+/g,`$&
33
+ ${H}`);if(J){let B=(V)=>V.default&&V.tag!=="tag:yaml.org,2002:str"&&V.test?.test(Y),{compat:O,tags:_}=Z.doc.schema;if(_.some(B)||O?.some(B))return P0(Q,Z)}return q?Y:t.foldFlowLines(Y,H,t.FOLD_FLOW,A$(Z,!1))}function lZ($,Z,U,X){let{implicitKey:z,inFlow:Q}=Z,J=typeof $.value==="string"?$:Object.assign({},$,{value:String($.value)}),{type:q}=$;if(q!==k.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(J.value))q=k.Scalar.QUOTE_DOUBLE}let H=(W)=>{switch(W){case k.Scalar.BLOCK_FOLDED:case k.Scalar.BLOCK_LITERAL:return z||Q?P0(J.value,Z):K$(J,Z,U,X);case k.Scalar.QUOTE_DOUBLE:return d0(J.value,Z);case k.Scalar.QUOTE_SINGLE:return P9(J.value,Z);case k.Scalar.PLAIN:return pZ(J,Z,U,X);default:return null}},G=H(q);if(G===null){let{defaultKeyType:W,defaultStringType:Y}=Z.options,B=z&&W||Y;if(G=H(B),G===null)throw Error(`Unsupported default string type ${B}`)}return G}dZ.stringifyString=lZ});var a0=I((eZ)=>{var aZ=M$(),e=b(),sZ=l0(),iZ=c0();function rZ($,Z){let U=Object.assign({blockQuote:!0,commentString:sZ.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},$.schema.toStringOptions,Z),X;switch(U.collectionStyle){case"block":X=!1;break;case"flow":X=!0;break;default:X=null}return{anchors:new Set,doc:$,flowCollectionPadding:U.flowCollectionPadding?" ":"",indent:"",indentStep:typeof U.indent==="number"?" ".repeat(U.indent):" ",inFlow:X,options:U}}function nZ($,Z){if(Z.tag){let z=$.filter((Q)=>Q.tag===Z.tag);if(z.length>0)return z.find((Q)=>Q.format===Z.format)??z[0]}let U=void 0,X;if(e.isScalar(Z)){X=Z.value;let z=$.filter((Q)=>Q.identify?.(X));if(z.length>1){let Q=z.filter((J)=>J.test);if(Q.length>0)z=Q}U=z.find((Q)=>Q.format===Z.format)??z.find((Q)=>!Q.format)}else X=Z,U=$.find((z)=>z.nodeClass&&X instanceof z.nodeClass);if(!U){let z=X?.constructor?.name??(X===null?"null":typeof X);throw Error(`Tag not resolved for ${z} value`)}return U}function oZ($,Z,{anchors:U,doc:X}){if(!X.directives)return"";let z=[],Q=(e.isScalar($)||e.isCollection($))&&$.anchor;if(Q&&aZ.anchorIsValid(Q))U.add(Q),z.push(`&${Q}`);let J=$.tag??(Z.default?null:Z.tag);if(J)z.push(X.directives.tagString(J));return z.join(" ")}function tZ($,Z,U,X){if(e.isPair($))return $.toString(Z,U,X);if(e.isAlias($)){if(Z.doc.directives)return $.toString(Z);if(Z.resolvedAliases?.has($))throw TypeError("Cannot stringify circular structure without alias nodes");else{if(Z.resolvedAliases)Z.resolvedAliases.add($);else Z.resolvedAliases=new Set([$]);$=$.resolve(Z.doc)}}let z=void 0,Q=e.isNode($)?$:Z.doc.createNode($,{onTagObj:(H)=>z=H});z??(z=nZ(Z.doc.schema.tags,Q));let J=oZ(Q,z,Z);if(J.length>0)Z.indentAtStart=(Z.indentAtStart??0)+J.length+1;let q=typeof z.stringify==="function"?z.stringify(Q,Z,U,X):e.isScalar(Q)?iZ.stringifyString(Q,Z,U,X):Q.toString(Z,U,X);if(!J)return q;return e.isScalar(Q)||q[0]==="{"||q[0]==="["?`${J} ${q}`:`${J}
34
+ ${Z.indent}${q}`}eZ.createStringifyContext=rZ;eZ.stringify=tZ});var B3=I((X1)=>{var i=b(),G3=g(),Y3=a0(),s0=l0();function U1({key:$,value:Z},U,X,z){let{allNullValues:Q,doc:J,indent:q,indentStep:H,options:{commentString:G,indentSeq:W,simpleKeys:Y}}=U,B=i.isNode($)&&$.comment||null;if(Y){if(B)throw Error("With simple keys, key nodes cannot have comments");if(i.isCollection($)||!i.isNode($)&&typeof $==="object")throw Error("With simple keys, collection cannot be used as a key value")}let O=!Y&&(!$||B&&Z==null&&!U.inFlow||i.isCollection($)||(i.isScalar($)?$.type===G3.Scalar.BLOCK_FOLDED||$.type===G3.Scalar.BLOCK_LITERAL:typeof $==="object"));U=Object.assign({},U,{allNullValues:!1,implicitKey:!O&&(Y||!Q),indent:q+H});let _=!1,V=!1,L=Y3.stringify($,U,()=>_=!0,()=>V=!0);if(!O&&!U.inFlow&&L.length>1024){if(Y)throw Error("With simple keys, single line scalar must not span more than 1024 characters");O=!0}if(U.inFlow){if(Q||Z==null){if(_&&X)X();return L===""?"?":O?`? ${L}`:L}}else if(Q&&!Y||Z==null&&O){if(L=`? ${L}`,B&&!_)L+=s0.lineComment(L,U.indent,G(B));else if(V&&z)z();return L}if(_)B=null;if(O){if(B)L+=s0.lineComment(L,U.indent,G(B));L=`? ${L}
35
+ ${q}:`}else if(L=`${L}:`,B)L+=s0.lineComment(L,U.indent,G(B));let R,M,T;if(i.isNode(Z))R=!!Z.spaceBefore,M=Z.commentBefore,T=Z.comment;else if(R=!1,M=null,T=null,Z&&typeof Z==="object")Z=J.createNode(Z);if(U.implicitKey=!1,!O&&!B&&i.isScalar(Z))U.indentAtStart=L.length+1;if(V=!1,!W&&H.length>=2&&!U.inFlow&&!O&&i.isSeq(Z)&&!Z.flow&&!Z.tag&&!Z.anchor)U.indent=U.indent.substring(2);let A=!1,K=Y3.stringify(Z,U,()=>A=!0,()=>V=!0),N=" ";if(B||R||M){if(N=R?`
36
+ `:"",M){let C=G(M);N+=`
37
+ ${s0.indentComment(C,U.indent)}`}if(K===""&&!U.inFlow){if(N===`
38
+ `&&T)N=`
39
39
 
40
40
  `}else N+=`
41
- ${U.indent}`}else if(!L&&i.isCollection(Z)){let w=F[0],T=F.indexOf(`
42
- `),b=T!==-1,p=U.inFlow??Z.flow??Z.items.length===0;if(b||!p){let l=!1;if(b&&(w==="&"||w==="!")){let E=F.indexOf(" ");if(w==="&"&&E!==-1&&E<T&&F[E+1]==="!")E=F.indexOf(" ",E+1);if(E===-1||T<E)l=!0}if(!l)N=`
43
- ${U.indent}`}}else if(F===""||F[0]===`
44
- `)N="";if(D+=N+F,U.inFlow){if(A&&z)z()}else if(K&&!A)D+=a0.lineComment(D,U.indent,G(K));else if(V&&X)X();return D}s3.stringifyPair=a3});var T2=_((o3)=>{var H4=g0("process");function r3($,...Z){if($==="debug")console.log(...Z)}function n3($,Z){if($==="debug"||$==="warn")if(typeof H4.emitWarning==="function")H4.emitWarning(Z);else console.warn(Z)}o3.debug=r3;o3.warn=n3});var b$=_((Z5)=>{var s0=C(),G4=g(),N$="<<",w$={identify:($)=>$===N$||typeof $==="symbol"&&$.description===N$,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new G4.Scalar(Symbol(N$)),{addToJSMap:Y4}),stringify:()=>N$},$5=($,Z)=>(w$.identify(Z)||s0.isScalar(Z)&&(!Z.type||Z.type===G4.Scalar.PLAIN)&&w$.identify(Z.value))&&$?.doc.schema.tags.some((U)=>U.tag===w$.tag&&U.default);function Y4($,Z,U){if(U=$&&s0.isAlias(U)?U.resolve($.doc):U,s0.isSeq(U))for(let z of U.items)P2($,Z,z);else if(Array.isArray(U))for(let z of U)P2($,Z,z);else P2($,Z,U)}function P2($,Z,U){let z=$&&s0.isAlias(U)?U.resolve($.doc):U;if(!s0.isMap(z))throw Error("Merge sources must be maps or map aliases");let X=z.toJSON(null,$,Map);for(let[Q,J]of X)if(Z instanceof Map){if(!Z.has(Q))Z.set(Q,J)}else if(Z instanceof Set)Z.add(Q);else if(!Object.prototype.hasOwnProperty.call(Z,Q))Object.defineProperty(Z,Q,{value:J,writable:!0,enumerable:!0,configurable:!0});return Z}Z5.addMergeToJSMap=Y4;Z5.isMergeKey=$5;Z5.merge=w$});var K2=_((G5)=>{var Q5=T2(),B4=b$(),J5=c0(),V4=C(),F2=o();function q5($,Z,{key:U,value:z}){if(V4.isNode(U)&&U.addToJSMap)U.addToJSMap($,Z,z);else if(B4.isMergeKey($,U))B4.addMergeToJSMap($,Z,z);else{let X=F2.toJS(U,"",$);if(Z instanceof Map)Z.set(X,F2.toJS(z,X,$));else if(Z instanceof Set)Z.add(X);else{let Q=H5(U,X,$),J=F2.toJS(z,Q,$);if(Q in Z)Object.defineProperty(Z,Q,{value:J,writable:!0,enumerable:!0,configurable:!0});else Z[Q]=J}}return Z}function H5($,Z,U){if(Z===null)return"";if(typeof Z!=="object")return String(Z);if(V4.isNode($)&&U?.doc){let z=J5.createStringifyContext(U.doc,{});z.anchors=new Set;for(let Q of U.anchors.keys())z.anchors.add(Q.anchor);z.inFlow=!0,z.inStringifyKey=!0;let X=$.toString(z);if(!U.mapKeyWarned){let Q=JSON.stringify(X);if(Q.length>40)Q=Q.substring(0,36)+'..."';Q5.warn(U.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${Q}. Set mapAsMap: true to use object keys.`),U.mapKeyWarned=!0}return X}return JSON.stringify(Z)}G5.addPairToJSMap=q5});var $0=_((D5)=>{var W4=m0(),B5=q4(),V5=K2(),C$=C();function W5($,Z,U){let z=W4.createNode($,void 0,U),X=W4.createNode(Z,void 0,U);return new j$(z,X)}class j${constructor($,Z=null){Object.defineProperty(this,C$.NODE_TYPE,{value:C$.PAIR}),this.key=$,this.value=Z}clone($){let{key:Z,value:U}=this;if(C$.isNode(Z))Z=Z.clone($);if(C$.isNode(U))U=U.clone($);return new j$(Z,U)}toJSON($,Z){let U=Z?.mapAsMap?new Map:{};return V5.addPairToJSMap(Z,U,this)}toString($,Z,U){return $?.doc?B5.stringifyPair(this,$,Z,U):JSON.stringify(this)}}D5.Pair=j$;D5.createPair=W5});var A2=_((M5)=>{var H0=C(),D4=c0(),S$=p0();function _5($,Z,U){return(Z.inFlow??$.flow?R5:I5)($,Z,U)}function I5({comment:$,items:Z},U,{blockItemPrefix:z,flowChars:X,itemIndent:Q,onChompKeep:J,onComment:q}){let{indent:H,options:{commentString:G}}=U,W=Object.assign({},U,{indent:Q,type:null}),Y=!1,B=[];for(let O=0;O<Z.length;++O){let V=Z[O],D=null;if(H0.isNode(V)){if(!Y&&V.spaceBefore)B.push("");if(E$(U,B,V.commentBefore,Y),V.comment)D=V.comment}else if(H0.isPair(V)){let P=H0.isNode(V.key)?V.key:null;if(P){if(!Y&&P.spaceBefore)B.push("");E$(U,B,P.commentBefore,Y)}}Y=!1;let R=D4.stringify(V,W,()=>D=null,()=>Y=!0);if(D)R+=S$.lineComment(R,Q,G(D));if(Y&&D)Y=!1;B.push(z+R)}let L;if(B.length===0)L=X.start+X.end;else{L=B[0];for(let O=1;O<B.length;++O){let V=B[O];L+=V?`
41
+ ${U.indent}`}else if(!O&&i.isCollection(Z)){let C=K[0],D=K.indexOf(`
42
+ `),w=D!==-1,p=U.inFlow??Z.flow??Z.items.length===0;if(w||!p){let l=!1;if(w&&(C==="&"||C==="!")){let E=K.indexOf(" ");if(C==="&"&&E!==-1&&E<D&&K[E+1]==="!")E=K.indexOf(" ",E+1);if(E===-1||D<E)l=!0}if(!l)N=`
43
+ ${U.indent}`}}else if(K===""||K[0]===`
44
+ `)N="";if(L+=N+K,U.inFlow){if(A&&X)X()}else if(T&&!A)L+=s0.lineComment(L,U.indent,G(T));else if(V&&z)z();return L}X1.stringifyPair=U1});var T9=I((q1)=>{var V3=f0("process");function Q1($,...Z){if($==="debug")console.log(...Z)}function J1($,Z){if($==="debug"||$==="warn")if(typeof V3.emitWarning==="function")V3.emitWarning(Z);else console.warn(Z)}q1.debug=Q1;q1.warn=J1});var C$=I((B1)=>{var i0=b(),W3=g(),w$="<<",b$={identify:($)=>$===w$||typeof $==="symbol"&&$.description===w$,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new W3.Scalar(Symbol(w$)),{addToJSMap:L3}),stringify:()=>w$},Y1=($,Z)=>(b$.identify(Z)||i0.isScalar(Z)&&(!Z.type||Z.type===W3.Scalar.PLAIN)&&b$.identify(Z.value))&&$?.doc.schema.tags.some((U)=>U.tag===b$.tag&&U.default);function L3($,Z,U){if(U=$&&i0.isAlias(U)?U.resolve($.doc):U,i0.isSeq(U))for(let X of U.items)K9($,Z,X);else if(Array.isArray(U))for(let X of U)K9($,Z,X);else K9($,Z,U)}function K9($,Z,U){let X=$&&i0.isAlias(U)?U.resolve($.doc):U;if(!i0.isMap(X))throw Error("Merge sources must be maps or map aliases");let z=X.toJSON(null,$,Map);for(let[Q,J]of z)if(Z instanceof Map){if(!Z.has(Q))Z.set(Q,J)}else if(Z instanceof Set)Z.add(Q);else if(!Object.prototype.hasOwnProperty.call(Z,Q))Object.defineProperty(Z,Q,{value:J,writable:!0,enumerable:!0,configurable:!0});return Z}B1.addMergeToJSMap=L3;B1.isMergeKey=Y1;B1.merge=b$});var N9=I((R1)=>{var O1=T9(),O3=C$(),_1=a0(),_3=b(),A9=o();function D1($,Z,{key:U,value:X}){if(_3.isNode(U)&&U.addToJSMap)U.addToJSMap($,Z,X);else if(O3.isMergeKey($,U))O3.addMergeToJSMap($,Z,X);else{let z=A9.toJS(U,"",$);if(Z instanceof Map)Z.set(z,A9.toJS(X,z,$));else if(Z instanceof Set)Z.add(z);else{let Q=I1(U,z,$),J=A9.toJS(X,Q,$);if(Q in Z)Object.defineProperty(Z,Q,{value:J,writable:!0,enumerable:!0,configurable:!0});else Z[Q]=J}}return Z}function I1($,Z,U){if(Z===null)return"";if(typeof Z!=="object")return String(Z);if(_3.isNode($)&&U?.doc){let X=_1.createStringifyContext(U.doc,{});X.anchors=new Set;for(let Q of U.anchors.keys())X.anchors.add(Q.anchor);X.inFlow=!0,X.inStringifyKey=!0;let z=$.toString(X);if(!U.mapKeyWarned){let Q=JSON.stringify(z);if(Q.length>40)Q=Q.substring(0,36)+'..."';O1.warn(U.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${Q}. Set mapAsMap: true to use object keys.`),U.mapKeyWarned=!0}return z}return JSON.stringify(Z)}R1.addPairToJSMap=D1});var $0=I((K1)=>{var D3=p0(),P1=B3(),F1=N9(),j$=b();function T1($,Z,U){let X=D3.createNode($,void 0,U),z=D3.createNode(Z,void 0,U);return new S$(X,z)}class S${constructor($,Z=null){Object.defineProperty(this,j$.NODE_TYPE,{value:j$.PAIR}),this.key=$,this.value=Z}clone($){let{key:Z,value:U}=this;if(j$.isNode(Z))Z=Z.clone($);if(j$.isNode(U))U=U.clone($);return new S$(Z,U)}toJSON($,Z){let U=Z?.mapAsMap?new Map:{};return F1.addPairToJSMap(Z,U,this)}toString($,Z,U){return $?.doc?P1.stringifyPair(this,$,Z,U):JSON.stringify(this)}}K1.Pair=S$;K1.createPair=T1});var w9=I((j1)=>{var H0=b(),I3=a0(),E$=l0();function w1($,Z,U){return(Z.inFlow??$.flow?C1:b1)($,Z,U)}function b1({comment:$,items:Z},U,{blockItemPrefix:X,flowChars:z,itemIndent:Q,onChompKeep:J,onComment:q}){let{indent:H,options:{commentString:G}}=U,W=Object.assign({},U,{indent:Q,type:null}),Y=!1,B=[];for(let _=0;_<Z.length;++_){let V=Z[_],L=null;if(H0.isNode(V)){if(!Y&&V.spaceBefore)B.push("");if(g$(U,B,V.commentBefore,Y),V.comment)L=V.comment}else if(H0.isPair(V)){let M=H0.isNode(V.key)?V.key:null;if(M){if(!Y&&M.spaceBefore)B.push("");g$(U,B,M.commentBefore,Y)}}Y=!1;let R=I3.stringify(V,W,()=>L=null,()=>Y=!0);if(L)R+=E$.lineComment(R,Q,G(L));if(Y&&L)Y=!1;B.push(X+R)}let O;if(B.length===0)O=z.start+z.end;else{O=B[0];for(let _=1;_<B.length;++_){let V=B[_];O+=V?`
45
45
  ${H}${V}`:`
46
- `}}if($){if(L+=`
47
- `+S$.indentComment(G($),H),q)q()}else if(Y&&J)J();return L}function R5({items:$},Z,{flowChars:U,itemIndent:z}){let{indent:X,indentStep:Q,flowCollectionPadding:J,options:{commentString:q}}=Z;z+=Q;let H=Object.assign({},Z,{indent:z,inFlow:!0,type:null}),G=!1,W=0,Y=[];for(let O=0;O<$.length;++O){let V=$[O],D=null;if(H0.isNode(V)){if(V.spaceBefore)Y.push("");if(E$(Z,Y,V.commentBefore,!1),V.comment)D=V.comment}else if(H0.isPair(V)){let P=H0.isNode(V.key)?V.key:null;if(P){if(P.spaceBefore)Y.push("");if(E$(Z,Y,P.commentBefore,!1),P.comment)G=!0}let K=H0.isNode(V.value)?V.value:null;if(K){if(K.comment)D=K.comment;if(K.commentBefore)G=!0}else if(V.value==null&&P?.comment)D=P.comment}if(D)G=!0;let R=D4.stringify(V,H,()=>D=null);if(O<$.length-1)R+=",";if(D)R+=S$.lineComment(R,z,q(D));if(!G&&(Y.length>W||R.includes(`
48
- `)))G=!0;Y.push(R),W=Y.length}let{start:B,end:L}=U;if(Y.length===0)return B+L;else{if(!G){let O=Y.reduce((V,D)=>V+D.length+2,2);G=Z.options.lineWidth>0&&O>Z.options.lineWidth}if(G){let O=B;for(let V of Y)O+=V?`
49
- ${Q}${X}${V}`:`
50
- `;return`${O}
51
- ${X}${L}`}else return`${B}${J}${Y.join(" ")}${J}${L}`}}function E$({indent:$,options:{commentString:Z}},U,z,X){if(z&&X)z=z.replace(/^\n+/,"");if(z){let Q=S$.indentComment(Z(z),$);U.push(Q.trimStart())}}M5.stringifyCollection=_5});var U0=_((N5)=>{var P5=A2(),F5=K2(),K5=P$(),Z0=C(),g$=$0(),A5=g();function i0($,Z){let U=Z0.isScalar(Z)?Z.value:Z;for(let z of $)if(Z0.isPair(z)){if(z.key===Z||z.key===U)return z;if(Z0.isScalar(z.key)&&z.key.value===U)return z}return}class L4 extends K5.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor($){super(Z0.MAP,$);this.items=[]}static from($,Z,U){let{keepUndefined:z,replacer:X}=U,Q=new this($),J=(q,H)=>{if(typeof X==="function")H=X.call(Z,q,H);else if(Array.isArray(X)&&!X.includes(q))return;if(H!==void 0||z)Q.items.push(g$.createPair(q,H,U))};if(Z instanceof Map)for(let[q,H]of Z)J(q,H);else if(Z&&typeof Z==="object")for(let q of Object.keys(Z))J(q,Z[q]);if(typeof $.sortMapEntries==="function")Q.items.sort($.sortMapEntries);return Q}add($,Z){let U;if(Z0.isPair($))U=$;else if(!$||typeof $!=="object"||!("key"in $))U=new g$.Pair($,$?.value);else U=new g$.Pair($.key,$.value);let z=i0(this.items,U.key),X=this.schema?.sortMapEntries;if(z){if(!Z)throw Error(`Key ${U.key} already set`);if(Z0.isScalar(z.value)&&A5.isScalarValue(U.value))z.value.value=U.value;else z.value=U.value}else if(X){let Q=this.items.findIndex((J)=>X(U,J)<0);if(Q===-1)this.items.push(U);else this.items.splice(Q,0,U)}else this.items.push(U)}delete($){let Z=i0(this.items,$);if(!Z)return!1;return this.items.splice(this.items.indexOf(Z),1).length>0}get($,Z){let z=i0(this.items,$)?.value;return(!Z&&Z0.isScalar(z)?z.value:z)??void 0}has($){return!!i0(this.items,$)}set($,Z){this.add(new g$.Pair($,Z),!0)}toJSON($,Z,U){let z=U?new U:Z?.mapAsMap?new Map:{};if(Z?.onCreate)Z.onCreate(z);for(let X of this.items)F5.addPairToJSMap(Z,z,X);return z}toString($,Z,U){if(!$)return JSON.stringify(this);for(let z of this.items)if(!Z0.isPair(z))throw Error(`Map items must all be pairs; found ${JSON.stringify(z)} instead`);if(!$.allNullValues&&this.hasAllNullValues(!1))$=Object.assign({},$,{allNullValues:!0});return P5.stringifyCollection(this,$,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:$.indent||"",onChompKeep:U,onComment:Z})}}N5.YAMLMap=L4;N5.findPair=i0});var P0=_((S5)=>{var C5=C(),O4=U0(),j5={collection:"map",default:!0,nodeClass:O4.YAMLMap,tag:"tag:yaml.org,2002:map",resolve($,Z){if(!C5.isMap($))Z("Expected a mapping for this tag");return $},createNode:($,Z,U)=>O4.YAMLMap.from($,Z,U)};S5.map=j5});var z0=_((u5)=>{var g5=m0(),y5=A2(),f5=P$(),f$=C(),x5=g(),h5=o();class _4 extends f5.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor($){super(f$.SEQ,$);this.items=[]}add($){this.items.push($)}delete($){let Z=y$($);if(typeof Z!=="number")return!1;return this.items.splice(Z,1).length>0}get($,Z){let U=y$($);if(typeof U!=="number")return;let z=this.items[U];return!Z&&f$.isScalar(z)?z.value:z}has($){let Z=y$($);return typeof Z==="number"&&Z<this.items.length}set($,Z){let U=y$($);if(typeof U!=="number")throw Error(`Expected a valid index, not ${$}.`);let z=this.items[U];if(f$.isScalar(z)&&x5.isScalarValue(Z))z.value=Z;else this.items[U]=Z}toJSON($,Z){let U=[];if(Z?.onCreate)Z.onCreate(U);let z=0;for(let X of this.items)U.push(h5.toJS(X,String(z++),Z));return U}toString($,Z,U){if(!$)return JSON.stringify(this);return y5.stringifyCollection(this,$,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:($.indent||"")+" ",onChompKeep:U,onComment:Z})}static from($,Z,U){let{replacer:z}=U,X=new this($);if(Z&&Symbol.iterator in Object(Z)){let Q=0;for(let J of Z){if(typeof z==="function"){let q=Z instanceof Set?J:String(Q++);J=z.call(Z,q,J)}X.items.push(g5.createNode(J,void 0,U))}}return X}}function y$($){let Z=f$.isScalar($)?$.value:$;if(Z&&typeof Z==="string")Z=Number(Z);return typeof Z==="number"&&Number.isInteger(Z)&&Z>=0?Z:null}u5.YAMLSeq=_4});var F0=_((p5)=>{var v5=C(),I4=z0(),m5={collection:"seq",default:!0,nodeClass:I4.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve($,Z){if(!v5.isSeq($))Z("Expected a sequence for this tag");return $},createNode:($,Z,U)=>I4.YAMLSeq.from($,Z,U)};p5.seq=m5});var r0=_((a5)=>{var d5=d0(),c5={identify:($)=>typeof $==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:($)=>$,stringify($,Z,U,z){return Z=Object.assign({actualString:!0},Z),d5.stringifyString($,Z,U,z)}};a5.string=c5});var x$=_((i5)=>{var R4=g(),M4={identify:($)=>$==null,createNode:()=>new R4.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new R4.Scalar(null),stringify:({source:$},Z)=>typeof $==="string"&&M4.test.test($)?$:Z.options.nullStr};i5.nullTag=M4});var N2=_((o5)=>{var n5=g(),T4={identify:($)=>typeof $==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:($)=>new n5.Scalar($[0]==="t"||$[0]==="T"),stringify({source:$,value:Z},U){if($&&T4.test.test($)){let z=$[0]==="t"||$[0]==="T";if(Z===z)return $}return Z?U.options.trueStr:U.options.falseStr}};o5.boolTag=T4});var K0=_(($U)=>{function e5({format:$,minFractionDigits:Z,tag:U,value:z}){if(typeof z==="bigint")return String(z);let X=typeof z==="number"?z:Number(z);if(!isFinite(X))return isNaN(X)?".nan":X<0?"-.inf":".inf";let Q=Object.is(z,-0)?"-0":JSON.stringify(z);if(!$&&Z&&(!U||U==="tag:yaml.org,2002:float")&&/^\d/.test(Q)){let J=Q.indexOf(".");if(J<0)J=Q.length,Q+=".";let q=Z-(Q.length-J-1);while(q-- >0)Q+="0"}return Q}$U.stringifyNumber=e5});var b2=_((JU)=>{var UU=g(),w2=K0(),zU={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:($)=>$.slice(-3).toLowerCase()==="nan"?NaN:$[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:w2.stringifyNumber},XU={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:($)=>parseFloat($),stringify($){let Z=Number($.value);return isFinite(Z)?Z.toExponential():w2.stringifyNumber($)}},QU={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve($){let Z=new UU.Scalar(parseFloat($)),U=$.indexOf(".");if(U!==-1&&$[$.length-1]==="0")Z.minFractionDigits=$.length-U-1;return Z},stringify:w2.stringifyNumber};JU.float=QU;JU.floatExp=XU;JU.floatNaN=zU});var j2=_((WU)=>{var P4=K0(),h$=($)=>typeof $==="bigint"||Number.isInteger($),C2=($,Z,U,{intAsBigInt:z})=>z?BigInt($):parseInt($.substring(Z),U);function F4($,Z,U){let{value:z}=$;if(h$(z)&&z>=0)return U+z.toString(Z);return P4.stringifyNumber($)}var YU={identify:($)=>h$($)&&$>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:($,Z,U)=>C2($,2,8,U),stringify:($)=>F4($,8,"0o")},BU={identify:h$,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:($,Z,U)=>C2($,0,10,U),stringify:P4.stringifyNumber},VU={identify:($)=>h$($)&&$>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:($,Z,U)=>C2($,2,16,U),stringify:($)=>F4($,16,"0x")};WU.int=BU;WU.intHex=VU;WU.intOct=YU});var K4=_((FU)=>{var _U=P0(),IU=x$(),RU=F0(),MU=r0(),TU=N2(),S2=b2(),E2=j2(),PU=[_U.map,RU.seq,MU.string,IU.nullTag,TU.boolTag,E2.intOct,E2.int,E2.intHex,S2.floatNaN,S2.floatExp,S2.float];FU.schema=PU});var N4=_((SU)=>{var AU=g(),NU=P0(),wU=F0();function A4($){return typeof $==="bigint"||Number.isInteger($)}var u$=({value:$})=>JSON.stringify($),bU=[{identify:($)=>typeof $==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:($)=>$,stringify:u$},{identify:($)=>$==null,createNode:()=>new AU.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:u$},{identify:($)=>typeof $==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:($)=>$==="true",stringify:u$},{identify:A4,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:($,Z,{intAsBigInt:U})=>U?BigInt($):parseInt($,10),stringify:({value:$})=>A4($)?$.toString():JSON.stringify($)},{identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:($)=>parseFloat($),stringify:u$}],CU={default:!0,tag:"",test:/^/,resolve($,Z){return Z(`Unresolved plain scalar ${JSON.stringify($)}`),$}},jU=[NU.map,wU.seq].concat(bU,CU);SU.schema=jU});var y2=_((fU)=>{var n0=g0("buffer"),g2=g(),gU=d0(),yU={identify:($)=>$ instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve($,Z){if(typeof n0.Buffer==="function")return n0.Buffer.from($,"base64");else if(typeof atob==="function"){let U=atob($.replace(/[\n\r]/g,"")),z=new Uint8Array(U.length);for(let X=0;X<U.length;++X)z[X]=U.charCodeAt(X);return z}else return Z("This environment does not support reading binary tags; either Buffer or atob is required"),$},stringify({comment:$,type:Z,value:U},z,X,Q){if(!U)return"";let J=U,q;if(typeof n0.Buffer==="function")q=J instanceof n0.Buffer?J.toString("base64"):n0.Buffer.from(J.buffer).toString("base64");else if(typeof btoa==="function"){let H="";for(let G=0;G<J.length;++G)H+=String.fromCharCode(J[G]);q=btoa(H)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(Z??(Z=g2.Scalar.BLOCK_LITERAL),Z!==g2.Scalar.QUOTE_DOUBLE){let H=Math.max(z.options.lineWidth-z.indent.length,z.options.minContentWidth),G=Math.ceil(q.length/H),W=Array(G);for(let Y=0,B=0;Y<G;++Y,B+=H)W[Y]=q.substr(B,H);q=W.join(Z===g2.Scalar.BLOCK_LITERAL?`
52
- `:" ")}return gU.stringifyString({comment:$,type:Z,value:q},z,X,Q)}};fU.binary=yU});var v$=_((vU)=>{var k$=C(),f2=$0(),hU=g(),uU=z0();function w4($,Z){if(k$.isSeq($))for(let U=0;U<$.items.length;++U){let z=$.items[U];if(k$.isPair(z))continue;else if(k$.isMap(z)){if(z.items.length>1)Z("Each pair must have its own sequence indicator");let X=z.items[0]||new f2.Pair(new hU.Scalar(null));if(z.commentBefore)X.key.commentBefore=X.key.commentBefore?`${z.commentBefore}
53
- ${X.key.commentBefore}`:z.commentBefore;if(z.comment){let Q=X.value??X.key;Q.comment=Q.comment?`${z.comment}
54
- ${Q.comment}`:z.comment}z=X}$.items[U]=k$.isPair(z)?z:new f2.Pair(z)}else Z("Expected a sequence for this tag");return $}function b4($,Z,U){let{replacer:z}=U,X=new uU.YAMLSeq($);X.tag="tag:yaml.org,2002:pairs";let Q=0;if(Z&&Symbol.iterator in Object(Z))for(let J of Z){if(typeof z==="function")J=z.call(Z,String(Q++),J);let q,H;if(Array.isArray(J))if(J.length===2)q=J[0],H=J[1];else throw TypeError(`Expected [key, value] tuple: ${J}`);else if(J&&J instanceof Object){let G=Object.keys(J);if(G.length===1)q=G[0],H=J[q];else throw TypeError(`Expected tuple with one key, not ${G.length} keys`)}else q=J;X.items.push(f2.createPair(q,H,U))}return X}var kU={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:w4,createNode:b4};vU.createPairs=b4;vU.pairs=kU;vU.resolvePairs=w4});var h2=_((aU)=>{var C4=C(),x2=o(),o0=U0(),dU=z0(),j4=v$();class G0 extends dU.YAMLSeq{constructor(){super();this.add=o0.YAMLMap.prototype.add.bind(this),this.delete=o0.YAMLMap.prototype.delete.bind(this),this.get=o0.YAMLMap.prototype.get.bind(this),this.has=o0.YAMLMap.prototype.has.bind(this),this.set=o0.YAMLMap.prototype.set.bind(this),this.tag=G0.tag}toJSON($,Z){if(!Z)return super.toJSON($);let U=new Map;if(Z?.onCreate)Z.onCreate(U);for(let z of this.items){let X,Q;if(C4.isPair(z))X=x2.toJS(z.key,"",Z),Q=x2.toJS(z.value,X,Z);else X=x2.toJS(z,"",Z);if(U.has(X))throw Error("Ordered maps must not include duplicate keys");U.set(X,Q)}return U}static from($,Z,U){let z=j4.createPairs($,Z,U),X=new this;return X.items=z.items,X}}G0.tag="tag:yaml.org,2002:omap";var cU={collection:"seq",identify:($)=>$ instanceof Map,nodeClass:G0,default:!1,tag:"tag:yaml.org,2002:omap",resolve($,Z){let U=j4.resolvePairs($,Z),z=[];for(let{key:X}of U.items)if(C4.isScalar(X))if(z.includes(X.value))Z(`Ordered maps must not include duplicate keys: ${X.value}`);else z.push(X.value);return Object.assign(new G0,U)},createNode:($,Z,U)=>G0.from($,Z,U)};aU.YAMLOMap=G0;aU.omap=cU});var f4=_((rU)=>{var S4=g();function E4({value:$,source:Z},U){if(Z&&($?g4:y4).test.test(Z))return Z;return $?U.options.trueStr:U.options.falseStr}var g4={identify:($)=>$===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new S4.Scalar(!0),stringify:E4},y4={identify:($)=>$===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new S4.Scalar(!1),stringify:E4};rU.falseTag=y4;rU.trueTag=g4});var x4=_((U1)=>{var tU=g(),u2=K0(),eU={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:($)=>$.slice(-3).toLowerCase()==="nan"?NaN:$[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:u2.stringifyNumber},$1={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:($)=>parseFloat($.replace(/_/g,"")),stringify($){let Z=Number($.value);return isFinite(Z)?Z.toExponential():u2.stringifyNumber($)}},Z1={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve($){let Z=new tU.Scalar(parseFloat($.replace(/_/g,""))),U=$.indexOf(".");if(U!==-1){let z=$.substring(U+1).replace(/_/g,"");if(z[z.length-1]==="0")Z.minFractionDigits=z.length}return Z},stringify:u2.stringifyNumber};U1.float=Z1;U1.floatExp=$1;U1.floatNaN=eU});var u4=_((Y1)=>{var h4=K0(),t0=($)=>typeof $==="bigint"||Number.isInteger($);function m$($,Z,U,{intAsBigInt:z}){let X=$[0];if(X==="-"||X==="+")Z+=1;if($=$.substring(Z).replace(/_/g,""),z){switch(U){case 2:$=`0b${$}`;break;case 8:$=`0o${$}`;break;case 16:$=`0x${$}`;break}let J=BigInt($);return X==="-"?BigInt(-1)*J:J}let Q=parseInt($,U);return X==="-"?-1*Q:Q}function k2($,Z,U){let{value:z}=$;if(t0(z)){let X=z.toString(Z);return z<0?"-"+U+X.substr(1):U+X}return h4.stringifyNumber($)}var J1={identify:t0,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:($,Z,U)=>m$($,2,2,U),stringify:($)=>k2($,2,"0b")},q1={identify:t0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:($,Z,U)=>m$($,1,8,U),stringify:($)=>k2($,8,"0")},H1={identify:t0,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:($,Z,U)=>m$($,0,10,U),stringify:h4.stringifyNumber},G1={identify:t0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:($,Z,U)=>m$($,2,16,U),stringify:($)=>k2($,16,"0x")};Y1.int=H1;Y1.intBin=J1;Y1.intHex=G1;Y1.intOct=q1});var v2=_((O1)=>{var d$=C(),p$=$0(),l$=U0();class Y0 extends l$.YAMLMap{constructor($){super($);this.tag=Y0.tag}add($){let Z;if(d$.isPair($))Z=$;else if($&&typeof $==="object"&&"key"in $&&"value"in $&&$.value===null)Z=new p$.Pair($.key,null);else Z=new p$.Pair($,null);if(!l$.findPair(this.items,Z.key))this.items.push(Z)}get($,Z){let U=l$.findPair(this.items,$);return!Z&&d$.isPair(U)?d$.isScalar(U.key)?U.key.value:U.key:U}set($,Z){if(typeof Z!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof Z}`);let U=l$.findPair(this.items,$);if(U&&!Z)this.items.splice(this.items.indexOf(U),1);else if(!U&&Z)this.items.push(new p$.Pair($))}toJSON($,Z){return super.toJSON($,Z,Set)}toString($,Z,U){if(!$)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},$,{allNullValues:!0}),Z,U);else throw Error("Set items must all have null values")}static from($,Z,U){let{replacer:z}=U,X=new this($);if(Z&&Symbol.iterator in Object(Z))for(let Q of Z){if(typeof z==="function")Q=z.call(Z,Q,Q);X.items.push(p$.createPair(Q,null,U))}return X}}Y0.tag="tag:yaml.org,2002:set";var L1={collection:"map",identify:($)=>$ instanceof Set,nodeClass:Y0,default:!1,tag:"tag:yaml.org,2002:set",createNode:($,Z,U)=>Y0.from($,Z,U),resolve($,Z){if(d$.isMap($))if($.hasAllNullValues(!0))return Object.assign(new Y0,$);else Z("Set items must all have null values");else Z("Expected a mapping for this tag");return $}};O1.YAMLSet=Y0;O1.set=L1});var p2=_((P1)=>{var R1=K0();function m2($,Z){let U=$[0],z=U==="-"||U==="+"?$.substring(1):$,X=(J)=>Z?BigInt(J):Number(J),Q=z.replace(/_/g,"").split(":").reduce((J,q)=>J*X(60)+X(q),X(0));return U==="-"?X(-1)*Q:Q}function k4($){let{value:Z}=$,U=(J)=>J;if(typeof Z==="bigint")U=(J)=>BigInt(J);else if(isNaN(Z)||!isFinite(Z))return R1.stringifyNumber($);let z="";if(Z<0)z="-",Z*=U(-1);let X=U(60),Q=[Z%X];if(Z<60)Q.unshift(0);else if(Z=(Z-Q[0])/X,Q.unshift(Z%X),Z>=60)Z=(Z-Q[0])/X,Q.unshift(Z);return z+Q.map((J)=>String(J).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var M1={identify:($)=>typeof $==="bigint"||Number.isInteger($),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:($,Z,{intAsBigInt:U})=>m2($,U),stringify:k4},T1={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:($)=>m2($,!1),stringify:k4},v4={identify:($)=>$ instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve($){let Z=$.match(v4.test);if(!Z)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,U,z,X,Q,J,q]=Z.map(Number),H=Z[7]?Number((Z[7]+"00").substr(1,3)):0,G=Date.UTC(U,z-1,X,Q||0,J||0,q||0,H),W=Z[8];if(W&&W!=="Z"){let Y=m2(W,!1);if(Math.abs(Y)<30)Y*=60;G-=60000*Y}return new Date(G)},stringify:({value:$})=>$?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};P1.floatTime=T1;P1.intTime=M1;P1.timestamp=v4});var p4=_((x1)=>{var N1=P0(),w1=x$(),b1=F0(),C1=r0(),j1=y2(),m4=f4(),l2=x4(),c$=u4(),S1=b$(),E1=h2(),g1=v$(),y1=v2(),d2=p2(),f1=[N1.map,b1.seq,C1.string,w1.nullTag,m4.trueTag,m4.falseTag,c$.intBin,c$.intOct,c$.int,c$.intHex,l2.floatNaN,l2.floatExp,l2.float,j1.binary,S1.merge,E1.omap,g1.pairs,y1.set,d2.intTime,d2.floatTime,d2.timestamp];x1.schema=f1});var t4=_((c1)=>{var a4=P0(),u1=x$(),s4=F0(),k1=r0(),v1=N2(),c2=b2(),a2=j2(),m1=K4(),p1=N4(),i4=y2(),e0=b$(),r4=h2(),n4=v$(),l4=p4(),o4=v2(),a$=p2(),d4=new Map([["core",m1.schema],["failsafe",[a4.map,s4.seq,k1.string]],["json",p1.schema],["yaml11",l4.schema],["yaml-1.1",l4.schema]]),c4={binary:i4.binary,bool:v1.boolTag,float:c2.float,floatExp:c2.floatExp,floatNaN:c2.floatNaN,floatTime:a$.floatTime,int:a2.int,intHex:a2.intHex,intOct:a2.intOct,intTime:a$.intTime,map:a4.map,merge:e0.merge,null:u1.nullTag,omap:r4.omap,pairs:n4.pairs,seq:s4.seq,set:o4.set,timestamp:a$.timestamp},l1={"tag:yaml.org,2002:binary":i4.binary,"tag:yaml.org,2002:merge":e0.merge,"tag:yaml.org,2002:omap":r4.omap,"tag:yaml.org,2002:pairs":n4.pairs,"tag:yaml.org,2002:set":o4.set,"tag:yaml.org,2002:timestamp":a$.timestamp};function d1($,Z,U){let z=d4.get(Z);if(z&&!$)return U&&!z.includes(e0.merge)?z.concat(e0.merge):z.slice();let X=z;if(!X)if(Array.isArray($))X=[];else{let Q=Array.from(d4.keys()).filter((J)=>J!=="yaml11").map((J)=>JSON.stringify(J)).join(", ");throw Error(`Unknown schema "${Z}"; use one of ${Q} or define customTags array`)}if(Array.isArray($))for(let Q of $)X=X.concat(Q);else if(typeof $==="function")X=$(X.slice());if(U)X=X.concat(e0.merge);return X.reduce((Q,J)=>{let q=typeof J==="string"?c4[J]:J;if(!q){let H=JSON.stringify(J),G=Object.keys(c4).map((W)=>JSON.stringify(W)).join(", ");throw Error(`Unknown custom tag ${H}; use one of ${G}`)}if(!Q.includes(q))Q.push(q);return Q},[])}c1.coreKnownTags=l1;c1.getTags=d1});var r2=_((t1)=>{var s2=C(),i1=P0(),r1=F0(),n1=r0(),s$=t4(),o1=($,Z)=>$.key<Z.key?-1:$.key>Z.key?1:0;class i2{constructor({compat:$,customTags:Z,merge:U,resolveKnownTags:z,schema:X,sortMapEntries:Q,toStringDefaults:J}){this.compat=Array.isArray($)?s$.getTags($,"compat"):$?s$.getTags(null,$):null,this.name=typeof X==="string"&&X||"core",this.knownTags=z?s$.coreKnownTags:{},this.tags=s$.getTags(Z,this.name,U),this.toStringOptions=J??null,Object.defineProperty(this,s2.MAP,{value:i1.map}),Object.defineProperty(this,s2.SCALAR,{value:n1.string}),Object.defineProperty(this,s2.SEQ,{value:r1.seq}),this.sortMapEntries=typeof Q==="function"?Q:Q===!0?o1:null}clone(){let $=Object.create(i2.prototype,Object.getOwnPropertyDescriptors(this));return $.tags=this.tags.slice(),$}}t1.Schema=i2});var e4=_((U7)=>{var $7=C(),n2=c0(),$$=p0();function Z7($,Z){let U=[],z=Z.directives===!0;if(Z.directives!==!1&&$.directives){let H=$.directives.toString($);if(H)U.push(H),z=!0;else if($.directives.docStart)z=!0}if(z)U.push("---");let X=n2.createStringifyContext($,Z),{commentString:Q}=X.options;if($.commentBefore){if(U.length!==1)U.unshift("");let H=Q($.commentBefore);U.unshift($$.indentComment(H,""))}let J=!1,q=null;if($.contents){if($7.isNode($.contents)){if($.contents.spaceBefore&&z)U.push("");if($.contents.commentBefore){let W=Q($.contents.commentBefore);U.push($$.indentComment(W,""))}X.forceBlockIndent=!!$.comment,q=$.contents.comment}let H=q?void 0:()=>J=!0,G=n2.stringify($.contents,X,()=>q=null,H);if(q)G+=$$.lineComment(G,"",Q(q));if((G[0]==="|"||G[0]===">")&&U[U.length-1]==="---")U[U.length-1]=`--- ${G}`;else U.push(G)}else U.push(n2.stringify($.contents,X));if($.directives?.docEnd)if($.comment){let H=Q($.comment);if(H.includes(`
55
- `))U.push("..."),U.push($$.indentComment(H,""));else U.push(`... ${H}`)}else U.push("...");else{let H=$.comment;if(H&&J)H=H.replace(/^\n+/,"");if(H){if((!J||q)&&U[U.length-1]!=="")U.push("");U.push($$.indentComment(Q(H),""))}}return U.join(`
46
+ `}}if($){if(O+=`
47
+ `+E$.indentComment(G($),H),q)q()}else if(Y&&J)J();return O}function C1({items:$},Z,{flowChars:U,itemIndent:X}){let{indent:z,indentStep:Q,flowCollectionPadding:J,options:{commentString:q}}=Z;X+=Q;let H=Object.assign({},Z,{indent:X,inFlow:!0,type:null}),G=!1,W=0,Y=[];for(let _=0;_<$.length;++_){let V=$[_],L=null;if(H0.isNode(V)){if(V.spaceBefore)Y.push("");if(g$(Z,Y,V.commentBefore,!1),V.comment)L=V.comment}else if(H0.isPair(V)){let M=H0.isNode(V.key)?V.key:null;if(M){if(M.spaceBefore)Y.push("");if(g$(Z,Y,M.commentBefore,!1),M.comment)G=!0}let T=H0.isNode(V.value)?V.value:null;if(T){if(T.comment)L=T.comment;if(T.commentBefore)G=!0}else if(V.value==null&&M?.comment)L=M.comment}if(L)G=!0;let R=I3.stringify(V,H,()=>L=null);if(_<$.length-1)R+=",";if(L)R+=E$.lineComment(R,X,q(L));if(!G&&(Y.length>W||R.includes(`
48
+ `)))G=!0;Y.push(R),W=Y.length}let{start:B,end:O}=U;if(Y.length===0)return B+O;else{if(!G){let _=Y.reduce((V,L)=>V+L.length+2,2);G=Z.options.lineWidth>0&&_>Z.options.lineWidth}if(G){let _=B;for(let V of Y)_+=V?`
49
+ ${Q}${z}${V}`:`
50
+ `;return`${_}
51
+ ${z}${O}`}else return`${B}${J}${Y.join(" ")}${J}${O}`}}function g$({indent:$,options:{commentString:Z}},U,X,z){if(X&&z)X=X.replace(/^\n+/,"");if(X){let Q=E$.indentComment(Z(X),$);U.push(Q.trimStart())}}j1.stringifyCollection=w1});var U0=I((x1)=>{var E1=w9(),g1=N9(),f1=T$(),Z0=b(),f$=$0(),y1=g();function r0($,Z){let U=Z0.isScalar(Z)?Z.value:Z;for(let X of $)if(Z0.isPair(X)){if(X.key===Z||X.key===U)return X;if(Z0.isScalar(X.key)&&X.key.value===U)return X}return}class R3 extends f1.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor($){super(Z0.MAP,$);this.items=[]}static from($,Z,U){let{keepUndefined:X,replacer:z}=U,Q=new this($),J=(q,H)=>{if(typeof z==="function")H=z.call(Z,q,H);else if(Array.isArray(z)&&!z.includes(q))return;if(H!==void 0||X)Q.items.push(f$.createPair(q,H,U))};if(Z instanceof Map)for(let[q,H]of Z)J(q,H);else if(Z&&typeof Z==="object")for(let q of Object.keys(Z))J(q,Z[q]);if(typeof $.sortMapEntries==="function")Q.items.sort($.sortMapEntries);return Q}add($,Z){let U;if(Z0.isPair($))U=$;else if(!$||typeof $!=="object"||!("key"in $))U=new f$.Pair($,$?.value);else U=new f$.Pair($.key,$.value);let X=r0(this.items,U.key),z=this.schema?.sortMapEntries;if(X){if(!Z)throw Error(`Key ${U.key} already set`);if(Z0.isScalar(X.value)&&y1.isScalarValue(U.value))X.value.value=U.value;else X.value=U.value}else if(z){let Q=this.items.findIndex((J)=>z(U,J)<0);if(Q===-1)this.items.push(U);else this.items.splice(Q,0,U)}else this.items.push(U)}delete($){let Z=r0(this.items,$);if(!Z)return!1;return this.items.splice(this.items.indexOf(Z),1).length>0}get($,Z){let X=r0(this.items,$)?.value;return(!Z&&Z0.isScalar(X)?X.value:X)??void 0}has($){return!!r0(this.items,$)}set($,Z){this.add(new f$.Pair($,Z),!0)}toJSON($,Z,U){let X=U?new U:Z?.mapAsMap?new Map:{};if(Z?.onCreate)Z.onCreate(X);for(let z of this.items)g1.addPairToJSMap(Z,X,z);return X}toString($,Z,U){if(!$)return JSON.stringify(this);for(let X of this.items)if(!Z0.isPair(X))throw Error(`Map items must all be pairs; found ${JSON.stringify(X)} instead`);if(!$.allNullValues&&this.hasAllNullValues(!1))$=Object.assign({},$,{allNullValues:!0});return E1.stringifyCollection(this,$,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:$.indent||"",onChompKeep:U,onComment:Z})}}x1.YAMLMap=R3;x1.findPair=r0});var F0=I((m1)=>{var k1=b(),M3=U0(),v1={collection:"map",default:!0,nodeClass:M3.YAMLMap,tag:"tag:yaml.org,2002:map",resolve($,Z){if(!k1.isMap($))Z("Expected a mapping for this tag");return $},createNode:($,Z,U)=>M3.YAMLMap.from($,Z,U)};m1.map=v1});var X0=I((i1)=>{var l1=p0(),d1=w9(),c1=T$(),x$=b(),a1=g(),s1=o();class P3 extends c1.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor($){super(x$.SEQ,$);this.items=[]}add($){this.items.push($)}delete($){let Z=y$($);if(typeof Z!=="number")return!1;return this.items.splice(Z,1).length>0}get($,Z){let U=y$($);if(typeof U!=="number")return;let X=this.items[U];return!Z&&x$.isScalar(X)?X.value:X}has($){let Z=y$($);return typeof Z==="number"&&Z<this.items.length}set($,Z){let U=y$($);if(typeof U!=="number")throw Error(`Expected a valid index, not ${$}.`);let X=this.items[U];if(x$.isScalar(X)&&a1.isScalarValue(Z))X.value=Z;else this.items[U]=Z}toJSON($,Z){let U=[];if(Z?.onCreate)Z.onCreate(U);let X=0;for(let z of this.items)U.push(s1.toJS(z,String(X++),Z));return U}toString($,Z,U){if(!$)return JSON.stringify(this);return d1.stringifyCollection(this,$,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:($.indent||"")+" ",onChompKeep:U,onComment:Z})}static from($,Z,U){let{replacer:X}=U,z=new this($);if(Z&&Symbol.iterator in Object(Z)){let Q=0;for(let J of Z){if(typeof X==="function"){let q=Z instanceof Set?J:String(Q++);J=X.call(Z,q,J)}z.items.push(l1.createNode(J,void 0,U))}}return z}}function y$($){let Z=x$.isScalar($)?$.value:$;if(Z&&typeof Z==="string")Z=Number(Z);return typeof Z==="number"&&Number.isInteger(Z)&&Z>=0?Z:null}i1.YAMLSeq=P3});var T0=I((t1)=>{var n1=b(),F3=X0(),o1={collection:"seq",default:!0,nodeClass:F3.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve($,Z){if(!n1.isSeq($))Z("Expected a sequence for this tag");return $},createNode:($,Z,U)=>F3.YAMLSeq.from($,Z,U)};t1.seq=o1});var n0=I((U5)=>{var $5=c0(),Z5={identify:($)=>typeof $==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:($)=>$,stringify($,Z,U,X){return Z=Object.assign({actualString:!0},Z),$5.stringifyString($,Z,U,X)}};U5.string=Z5});var h$=I((z5)=>{var T3=g(),K3={identify:($)=>$==null,createNode:()=>new T3.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new T3.Scalar(null),stringify:({source:$},Z)=>typeof $==="string"&&K3.test.test($)?$:Z.options.nullStr};z5.nullTag=K3});var b9=I((q5)=>{var J5=g(),A3={identify:($)=>typeof $==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:($)=>new J5.Scalar($[0]==="t"||$[0]==="T"),stringify({source:$,value:Z},U){if($&&A3.test.test($)){let X=$[0]==="t"||$[0]==="T";if(Z===X)return $}return Z?U.options.trueStr:U.options.falseStr}};q5.boolTag=A3});var K0=I((Y5)=>{function G5({format:$,minFractionDigits:Z,tag:U,value:X}){if(typeof X==="bigint")return String(X);let z=typeof X==="number"?X:Number(X);if(!isFinite(z))return isNaN(z)?".nan":z<0?"-.inf":".inf";let Q=Object.is(X,-0)?"-0":JSON.stringify(X);if(!$&&Z&&(!U||U==="tag:yaml.org,2002:float")&&/^\d/.test(Q)){let J=Q.indexOf(".");if(J<0)J=Q.length,Q+=".";let q=Z-(Q.length-J-1);while(q-- >0)Q+="0"}return Q}Y5.stringifyNumber=G5});var j9=I((_5)=>{var V5=g(),C9=K0(),W5={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:($)=>$.slice(-3).toLowerCase()==="nan"?NaN:$[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:C9.stringifyNumber},L5={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:($)=>parseFloat($),stringify($){let Z=Number($.value);return isFinite(Z)?Z.toExponential():C9.stringifyNumber($)}},O5={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve($){let Z=new V5.Scalar(parseFloat($)),U=$.indexOf(".");if(U!==-1&&$[$.length-1]==="0")Z.minFractionDigits=$.length-U-1;return Z},stringify:C9.stringifyNumber};_5.float=O5;_5.floatExp=L5;_5.floatNaN=W5});var E9=I((T5)=>{var N3=K0(),u$=($)=>typeof $==="bigint"||Number.isInteger($),S9=($,Z,U,{intAsBigInt:X})=>X?BigInt($):parseInt($.substring(Z),U);function w3($,Z,U){let{value:X}=$;if(u$(X)&&X>=0)return U+X.toString(Z);return N3.stringifyNumber($)}var M5={identify:($)=>u$($)&&$>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:($,Z,U)=>S9($,2,8,U),stringify:($)=>w3($,8,"0o")},P5={identify:u$,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:($,Z,U)=>S9($,0,10,U),stringify:N3.stringifyNumber},F5={identify:($)=>u$($)&&$>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:($,Z,U)=>S9($,2,16,U),stringify:($)=>w3($,16,"0x")};T5.int=P5;T5.intHex=F5;T5.intOct=M5});var b3=I((g5)=>{var w5=F0(),b5=h$(),C5=T0(),j5=n0(),S5=b9(),g9=j9(),f9=E9(),E5=[w5.map,C5.seq,j5.string,b5.nullTag,S5.boolTag,f9.intOct,f9.int,f9.intHex,g9.floatNaN,g9.floatExp,g9.float];g5.schema=E5});var j3=I((m5)=>{var y5=g(),x5=F0(),h5=T0();function C3($){return typeof $==="bigint"||Number.isInteger($)}var k$=({value:$})=>JSON.stringify($),u5=[{identify:($)=>typeof $==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:($)=>$,stringify:k$},{identify:($)=>$==null,createNode:()=>new y5.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:k$},{identify:($)=>typeof $==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:($)=>$==="true",stringify:k$},{identify:C3,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:($,Z,{intAsBigInt:U})=>U?BigInt($):parseInt($,10),stringify:({value:$})=>C3($)?$.toString():JSON.stringify($)},{identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:($)=>parseFloat($),stringify:k$}],k5={default:!0,tag:"",test:/^/,resolve($,Z){return Z(`Unresolved plain scalar ${JSON.stringify($)}`),$}},v5=[x5.map,h5.seq].concat(u5,k5);m5.schema=v5});var x9=I((c5)=>{var o0=f0("buffer"),y9=g(),l5=c0(),d5={identify:($)=>$ instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve($,Z){if(typeof o0.Buffer==="function")return o0.Buffer.from($,"base64");else if(typeof atob==="function"){let U=atob($.replace(/[\n\r]/g,"")),X=new Uint8Array(U.length);for(let z=0;z<U.length;++z)X[z]=U.charCodeAt(z);return X}else return Z("This environment does not support reading binary tags; either Buffer or atob is required"),$},stringify({comment:$,type:Z,value:U},X,z,Q){if(!U)return"";let J=U,q;if(typeof o0.Buffer==="function")q=J instanceof o0.Buffer?J.toString("base64"):o0.Buffer.from(J.buffer).toString("base64");else if(typeof btoa==="function"){let H="";for(let G=0;G<J.length;++G)H+=String.fromCharCode(J[G]);q=btoa(H)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(Z??(Z=y9.Scalar.BLOCK_LITERAL),Z!==y9.Scalar.QUOTE_DOUBLE){let H=Math.max(X.options.lineWidth-X.indent.length,X.options.minContentWidth),G=Math.ceil(q.length/H),W=Array(G);for(let Y=0,B=0;Y<G;++Y,B+=H)W[Y]=q.substr(B,H);q=W.join(Z===y9.Scalar.BLOCK_LITERAL?`
52
+ `:" ")}return l5.stringifyString({comment:$,type:Z,value:q},X,z,Q)}};c5.binary=d5});var m$=I((n5)=>{var v$=b(),h9=$0(),s5=g(),i5=X0();function S3($,Z){if(v$.isSeq($))for(let U=0;U<$.items.length;++U){let X=$.items[U];if(v$.isPair(X))continue;else if(v$.isMap(X)){if(X.items.length>1)Z("Each pair must have its own sequence indicator");let z=X.items[0]||new h9.Pair(new s5.Scalar(null));if(X.commentBefore)z.key.commentBefore=z.key.commentBefore?`${X.commentBefore}
53
+ ${z.key.commentBefore}`:X.commentBefore;if(X.comment){let Q=z.value??z.key;Q.comment=Q.comment?`${X.comment}
54
+ ${Q.comment}`:X.comment}X=z}$.items[U]=v$.isPair(X)?X:new h9.Pair(X)}else Z("Expected a sequence for this tag");return $}function E3($,Z,U){let{replacer:X}=U,z=new i5.YAMLSeq($);z.tag="tag:yaml.org,2002:pairs";let Q=0;if(Z&&Symbol.iterator in Object(Z))for(let J of Z){if(typeof X==="function")J=X.call(Z,String(Q++),J);let q,H;if(Array.isArray(J))if(J.length===2)q=J[0],H=J[1];else throw TypeError(`Expected [key, value] tuple: ${J}`);else if(J&&J instanceof Object){let G=Object.keys(J);if(G.length===1)q=G[0],H=J[q];else throw TypeError(`Expected tuple with one key, not ${G.length} keys`)}else q=J;z.items.push(h9.createPair(q,H,U))}return z}var r5={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:S3,createNode:E3};n5.createPairs=E3;n5.pairs=r5;n5.resolvePairs=S3});var k9=I((U7)=>{var g3=b(),u9=o(),t0=U0(),$7=X0(),f3=m$();class G0 extends $7.YAMLSeq{constructor(){super();this.add=t0.YAMLMap.prototype.add.bind(this),this.delete=t0.YAMLMap.prototype.delete.bind(this),this.get=t0.YAMLMap.prototype.get.bind(this),this.has=t0.YAMLMap.prototype.has.bind(this),this.set=t0.YAMLMap.prototype.set.bind(this),this.tag=G0.tag}toJSON($,Z){if(!Z)return super.toJSON($);let U=new Map;if(Z?.onCreate)Z.onCreate(U);for(let X of this.items){let z,Q;if(g3.isPair(X))z=u9.toJS(X.key,"",Z),Q=u9.toJS(X.value,z,Z);else z=u9.toJS(X,"",Z);if(U.has(z))throw Error("Ordered maps must not include duplicate keys");U.set(z,Q)}return U}static from($,Z,U){let X=f3.createPairs($,Z,U),z=new this;return z.items=X.items,z}}G0.tag="tag:yaml.org,2002:omap";var Z7={collection:"seq",identify:($)=>$ instanceof Map,nodeClass:G0,default:!1,tag:"tag:yaml.org,2002:omap",resolve($,Z){let U=f3.resolvePairs($,Z),X=[];for(let{key:z}of U.items)if(g3.isScalar(z))if(X.includes(z.value))Z(`Ordered maps must not include duplicate keys: ${z.value}`);else X.push(z.value);return Object.assign(new G0,U)},createNode:($,Z,U)=>G0.from($,Z,U)};U7.YAMLOMap=G0;U7.omap=Z7});var k3=I((Q7)=>{var y3=g();function x3({value:$,source:Z},U){if(Z&&($?h3:u3).test.test(Z))return Z;return $?U.options.trueStr:U.options.falseStr}var h3={identify:($)=>$===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new y3.Scalar(!0),stringify:x3},u3={identify:($)=>$===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new y3.Scalar(!1),stringify:x3};Q7.falseTag=u3;Q7.trueTag=h3});var v3=I((V7)=>{var H7=g(),v9=K0(),G7={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:($)=>$.slice(-3).toLowerCase()==="nan"?NaN:$[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:v9.stringifyNumber},Y7={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:($)=>parseFloat($.replace(/_/g,"")),stringify($){let Z=Number($.value);return isFinite(Z)?Z.toExponential():v9.stringifyNumber($)}},B7={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve($){let Z=new H7.Scalar(parseFloat($.replace(/_/g,""))),U=$.indexOf(".");if(U!==-1){let X=$.substring(U+1).replace(/_/g,"");if(X[X.length-1]==="0")Z.minFractionDigits=X.length}return Z},stringify:v9.stringifyNumber};V7.float=B7;V7.floatExp=Y7;V7.floatNaN=G7});var p3=I((M7)=>{var m3=K0(),e0=($)=>typeof $==="bigint"||Number.isInteger($);function p$($,Z,U,{intAsBigInt:X}){let z=$[0];if(z==="-"||z==="+")Z+=1;if($=$.substring(Z).replace(/_/g,""),X){switch(U){case 2:$=`0b${$}`;break;case 8:$=`0o${$}`;break;case 16:$=`0x${$}`;break}let J=BigInt($);return z==="-"?BigInt(-1)*J:J}let Q=parseInt($,U);return z==="-"?-1*Q:Q}function m9($,Z,U){let{value:X}=$;if(e0(X)){let z=X.toString(Z);return X<0?"-"+U+z.substr(1):U+z}return m3.stringifyNumber($)}var _7={identify:e0,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:($,Z,U)=>p$($,2,2,U),stringify:($)=>m9($,2,"0b")},D7={identify:e0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:($,Z,U)=>p$($,1,8,U),stringify:($)=>m9($,8,"0")},I7={identify:e0,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:($,Z,U)=>p$($,0,10,U),stringify:m3.stringifyNumber},R7={identify:e0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:($,Z,U)=>p$($,2,16,U),stringify:($)=>m9($,16,"0x")};M7.int=I7;M7.intBin=_7;M7.intHex=R7;M7.intOct=D7});var p9=I((N7)=>{var c$=b(),l$=$0(),d$=U0();class Y0 extends d$.YAMLMap{constructor($){super($);this.tag=Y0.tag}add($){let Z;if(c$.isPair($))Z=$;else if($&&typeof $==="object"&&"key"in $&&"value"in $&&$.value===null)Z=new l$.Pair($.key,null);else Z=new l$.Pair($,null);if(!d$.findPair(this.items,Z.key))this.items.push(Z)}get($,Z){let U=d$.findPair(this.items,$);return!Z&&c$.isPair(U)?c$.isScalar(U.key)?U.key.value:U.key:U}set($,Z){if(typeof Z!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof Z}`);let U=d$.findPair(this.items,$);if(U&&!Z)this.items.splice(this.items.indexOf(U),1);else if(!U&&Z)this.items.push(new l$.Pair($))}toJSON($,Z){return super.toJSON($,Z,Set)}toString($,Z,U){if(!$)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},$,{allNullValues:!0}),Z,U);else throw Error("Set items must all have null values")}static from($,Z,U){let{replacer:X}=U,z=new this($);if(Z&&Symbol.iterator in Object(Z))for(let Q of Z){if(typeof X==="function")Q=X.call(Z,Q,Q);z.items.push(l$.createPair(Q,null,U))}return z}}Y0.tag="tag:yaml.org,2002:set";var A7={collection:"map",identify:($)=>$ instanceof Set,nodeClass:Y0,default:!1,tag:"tag:yaml.org,2002:set",createNode:($,Z,U)=>Y0.from($,Z,U),resolve($,Z){if(c$.isMap($))if($.hasAllNullValues(!0))return Object.assign(new Y0,$);else Z("Set items must all have null values");else Z("Expected a mapping for this tag");return $}};N7.YAMLSet=Y0;N7.set=A7});var d9=I((E7)=>{var C7=K0();function l9($,Z){let U=$[0],X=U==="-"||U==="+"?$.substring(1):$,z=(J)=>Z?BigInt(J):Number(J),Q=X.replace(/_/g,"").split(":").reduce((J,q)=>J*z(60)+z(q),z(0));return U==="-"?z(-1)*Q:Q}function l3($){let{value:Z}=$,U=(J)=>J;if(typeof Z==="bigint")U=(J)=>BigInt(J);else if(isNaN(Z)||!isFinite(Z))return C7.stringifyNumber($);let X="";if(Z<0)X="-",Z*=U(-1);let z=U(60),Q=[Z%z];if(Z<60)Q.unshift(0);else if(Z=(Z-Q[0])/z,Q.unshift(Z%z),Z>=60)Z=(Z-Q[0])/z,Q.unshift(Z);return X+Q.map((J)=>String(J).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var j7={identify:($)=>typeof $==="bigint"||Number.isInteger($),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:($,Z,{intAsBigInt:U})=>l9($,U),stringify:l3},S7={identify:($)=>typeof $==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:($)=>l9($,!1),stringify:l3},d3={identify:($)=>$ instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve($){let Z=$.match(d3.test);if(!Z)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,U,X,z,Q,J,q]=Z.map(Number),H=Z[7]?Number((Z[7]+"00").substr(1,3)):0,G=Date.UTC(U,X-1,z,Q||0,J||0,q||0,H),W=Z[8];if(W&&W!=="Z"){let Y=l9(W,!1);if(Math.abs(Y)<30)Y*=60;G-=60000*Y}return new Date(G)},stringify:({value:$})=>$?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};E7.floatTime=S7;E7.intTime=j7;E7.timestamp=d3});var a3=I((a7)=>{var x7=F0(),h7=h$(),u7=T0(),k7=n0(),v7=x9(),c3=k3(),c9=v3(),a$=p3(),m7=C$(),p7=k9(),l7=m$(),d7=p9(),a9=d9(),c7=[x7.map,u7.seq,k7.string,h7.nullTag,c3.trueTag,c3.falseTag,a$.intBin,a$.intOct,a$.int,a$.intHex,c9.floatNaN,c9.floatExp,c9.float,v7.binary,m7.merge,p7.omap,l7.pairs,d7.set,a9.intTime,a9.floatTime,a9.timestamp];a7.schema=c7});var U4=I((ZU)=>{var n3=F0(),i7=h$(),o3=T0(),r7=n0(),n7=b9(),s9=j9(),i9=E9(),o7=b3(),t7=j3(),t3=x9(),$$=C$(),e3=k9(),$4=m$(),s3=a3(),Z4=p9(),s$=d9(),i3=new Map([["core",o7.schema],["failsafe",[n3.map,o3.seq,r7.string]],["json",t7.schema],["yaml11",s3.schema],["yaml-1.1",s3.schema]]),r3={binary:t3.binary,bool:n7.boolTag,float:s9.float,floatExp:s9.floatExp,floatNaN:s9.floatNaN,floatTime:s$.floatTime,int:i9.int,intHex:i9.intHex,intOct:i9.intOct,intTime:s$.intTime,map:n3.map,merge:$$.merge,null:i7.nullTag,omap:e3.omap,pairs:$4.pairs,seq:o3.seq,set:Z4.set,timestamp:s$.timestamp},e7={"tag:yaml.org,2002:binary":t3.binary,"tag:yaml.org,2002:merge":$$.merge,"tag:yaml.org,2002:omap":e3.omap,"tag:yaml.org,2002:pairs":$4.pairs,"tag:yaml.org,2002:set":Z4.set,"tag:yaml.org,2002:timestamp":s$.timestamp};function $U($,Z,U){let X=i3.get(Z);if(X&&!$)return U&&!X.includes($$.merge)?X.concat($$.merge):X.slice();let z=X;if(!z)if(Array.isArray($))z=[];else{let Q=Array.from(i3.keys()).filter((J)=>J!=="yaml11").map((J)=>JSON.stringify(J)).join(", ");throw Error(`Unknown schema "${Z}"; use one of ${Q} or define customTags array`)}if(Array.isArray($))for(let Q of $)z=z.concat(Q);else if(typeof $==="function")z=$(z.slice());if(U)z=z.concat($$.merge);return z.reduce((Q,J)=>{let q=typeof J==="string"?r3[J]:J;if(!q){let H=JSON.stringify(J),G=Object.keys(r3).map((W)=>JSON.stringify(W)).join(", ");throw Error(`Unknown custom tag ${H}; use one of ${G}`)}if(!Q.includes(q))Q.push(q);return Q},[])}ZU.coreKnownTags=e7;ZU.getTags=$U});var o9=I((HU)=>{var r9=b(),zU=F0(),QU=T0(),JU=n0(),i$=U4(),qU=($,Z)=>$.key<Z.key?-1:$.key>Z.key?1:0;class n9{constructor({compat:$,customTags:Z,merge:U,resolveKnownTags:X,schema:z,sortMapEntries:Q,toStringDefaults:J}){this.compat=Array.isArray($)?i$.getTags($,"compat"):$?i$.getTags(null,$):null,this.name=typeof z==="string"&&z||"core",this.knownTags=X?i$.coreKnownTags:{},this.tags=i$.getTags(Z,this.name,U),this.toStringOptions=J??null,Object.defineProperty(this,r9.MAP,{value:zU.map}),Object.defineProperty(this,r9.SCALAR,{value:JU.string}),Object.defineProperty(this,r9.SEQ,{value:QU.seq}),this.sortMapEntries=typeof Q==="function"?Q:Q===!0?qU:null}clone(){let $=Object.create(n9.prototype,Object.getOwnPropertyDescriptors(this));return $.tags=this.tags.slice(),$}}HU.Schema=n9});var X4=I((VU)=>{var YU=b(),t9=a0(),Z$=l0();function BU($,Z){let U=[],X=Z.directives===!0;if(Z.directives!==!1&&$.directives){let H=$.directives.toString($);if(H)U.push(H),X=!0;else if($.directives.docStart)X=!0}if(X)U.push("---");let z=t9.createStringifyContext($,Z),{commentString:Q}=z.options;if($.commentBefore){if(U.length!==1)U.unshift("");let H=Q($.commentBefore);U.unshift(Z$.indentComment(H,""))}let J=!1,q=null;if($.contents){if(YU.isNode($.contents)){if($.contents.spaceBefore&&X)U.push("");if($.contents.commentBefore){let W=Q($.contents.commentBefore);U.push(Z$.indentComment(W,""))}z.forceBlockIndent=!!$.comment,q=$.contents.comment}let H=q?void 0:()=>J=!0,G=t9.stringify($.contents,z,()=>q=null,H);if(q)G+=Z$.lineComment(G,"",Q(q));if((G[0]==="|"||G[0]===">")&&U[U.length-1]==="---")U[U.length-1]=`--- ${G}`;else U.push(G)}else U.push(t9.stringify($.contents,z));if($.directives?.docEnd)if($.comment){let H=Q($.comment);if(H.includes(`
55
+ `))U.push("..."),U.push(Z$.indentComment(H,""));else U.push(`... ${H}`)}else U.push("...");else{let H=$.comment;if(H&&J)H=H.replace(/^\n+/,"");if(H){if((!J||q)&&U[U.length-1]!=="")U.push("");U.push(Z$.indentComment(Q(H),""))}}return U.join(`
56
56
  `)+`
57
- `}U7.stringifyDocument=Z7});var Z$=_((B7)=>{var X7=v0(),A0=P$(),u=C(),Q7=$0(),J7=o(),q7=r2(),H7=e4(),o2=R$(),G7=O2(),Y7=m0(),t2=L2();class e2{constructor($,Z,U){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,u.NODE_TYPE,{value:u.DOC});let z=null;if(typeof Z==="function"||Array.isArray(Z))z=Z;else if(U===void 0&&Z)U=Z,Z=void 0;let X=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},U);this.options=X;let{version:Q}=X;if(U?._directives){if(this.directives=U._directives.atDocument(),this.directives.yaml.explicit)Q=this.directives.yaml.version}else this.directives=new t2.Directives({version:Q});this.setSchema(Q,U),this.contents=$===void 0?null:this.createNode($,z,U)}clone(){let $=Object.create(e2.prototype,{[u.NODE_TYPE]:{value:u.DOC}});if($.commentBefore=this.commentBefore,$.comment=this.comment,$.errors=this.errors.slice(),$.warnings=this.warnings.slice(),$.options=Object.assign({},this.options),this.directives)$.directives=this.directives.clone();if($.schema=this.schema.clone(),$.contents=u.isNode(this.contents)?this.contents.clone($.schema):this.contents,this.range)$.range=this.range.slice();return $}add($){if(N0(this.contents))this.contents.add($)}addIn($,Z){if(N0(this.contents))this.contents.addIn($,Z)}createAlias($,Z){if(!$.anchor){let U=o2.anchorNames(this);$.anchor=!Z||U.has(Z)?o2.findNewAnchor(Z||"a",U):Z}return new X7.Alias($.anchor)}createNode($,Z,U){let z=void 0;if(typeof Z==="function")$=Z.call({"":$},"",$),z=Z;else if(Array.isArray(Z)){let V=(R)=>typeof R==="number"||R instanceof String||R instanceof Number,D=Z.filter(V).map(String);if(D.length>0)Z=Z.concat(D);z=Z}else if(U===void 0&&Z)U=Z,Z=void 0;let{aliasDuplicateObjects:X,anchorPrefix:Q,flow:J,keepUndefined:q,onTagObj:H,tag:G}=U??{},{onAnchor:W,setAnchors:Y,sourceObjects:B}=o2.createNodeAnchors(this,Q||"a"),L={aliasDuplicateObjects:X??!0,keepUndefined:q??!1,onAnchor:W,onTagObj:H,replacer:z,schema:this.schema,sourceObjects:B},O=Y7.createNode($,G,L);if(J&&u.isCollection(O))O.flow=!0;return Y(),O}createPair($,Z,U={}){let z=this.createNode($,null,U),X=this.createNode(Z,null,U);return new Q7.Pair(z,X)}delete($){return N0(this.contents)?this.contents.delete($):!1}deleteIn($){if(A0.isEmptyPath($)){if(this.contents==null)return!1;return this.contents=null,!0}return N0(this.contents)?this.contents.deleteIn($):!1}get($,Z){return u.isCollection(this.contents)?this.contents.get($,Z):void 0}getIn($,Z){if(A0.isEmptyPath($))return!Z&&u.isScalar(this.contents)?this.contents.value:this.contents;return u.isCollection(this.contents)?this.contents.getIn($,Z):void 0}has($){return u.isCollection(this.contents)?this.contents.has($):!1}hasIn($){if(A0.isEmptyPath($))return this.contents!==void 0;return u.isCollection(this.contents)?this.contents.hasIn($):!1}set($,Z){if(this.contents==null)this.contents=A0.collectionFromPath(this.schema,[$],Z);else if(N0(this.contents))this.contents.set($,Z)}setIn($,Z){if(A0.isEmptyPath($))this.contents=Z;else if(this.contents==null)this.contents=A0.collectionFromPath(this.schema,Array.from($),Z);else if(N0(this.contents))this.contents.setIn($,Z)}setSchema($,Z={}){if(typeof $==="number")$=String($);let U;switch($){case"1.1":if(this.directives)this.directives.yaml.version="1.1";else this.directives=new t2.Directives({version:"1.1"});U={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":if(this.directives)this.directives.yaml.version=$;else this.directives=new t2.Directives({version:$});U={resolveKnownTags:!0,schema:"core"};break;case null:if(this.directives)delete this.directives;U=null;break;default:{let z=JSON.stringify($);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${z}`)}}if(Z.schema instanceof Object)this.schema=Z.schema;else if(U)this.schema=new q7.Schema(Object.assign(U,Z));else throw Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:$,jsonArg:Z,mapAsMap:U,maxAliasCount:z,onAnchor:X,reviver:Q}={}){let J={anchors:new Map,doc:this,keep:!$,mapAsMap:U===!0,mapKeyWarned:!1,maxAliasCount:typeof z==="number"?z:100},q=J7.toJS(this.contents,Z??"",J);if(typeof X==="function")for(let{count:H,res:G}of J.anchors.values())X(G,H);return typeof Q==="function"?G7.applyReviver(Q,{"":q},"",q):q}toJSON($,Z){return this.toJS({json:!0,jsonArg:$,mapAsMap:!1,onAnchor:Z})}toString($={}){if(this.errors.length>0)throw Error("Document with errors cannot be stringified");if("indent"in $&&(!Number.isInteger($.indent)||Number($.indent)<=0)){let Z=JSON.stringify($.indent);throw Error(`"indent" option must be a positive integer, not ${Z}`)}return H7.stringifyDocument(this,$)}}function N0($){if(u.isCollection($))return!0;throw Error("Expected a YAML collection as document contents")}B7.Document=e2});var U$=_((D7)=>{class i$ extends Error{constructor($,Z,U,z){super();this.name=$,this.code=U,this.message=z,this.pos=Z}}class $6 extends i${constructor($,Z,U){super("YAMLParseError",$,Z,U)}}class Z6 extends i${constructor($,Z,U){super("YAMLWarning",$,Z,U)}}var W7=($,Z)=>(U)=>{if(U.pos[0]===-1)return;U.linePos=U.pos.map((q)=>Z.linePos(q));let{line:z,col:X}=U.linePos[0];U.message+=` at line ${z}, column ${X}`;let Q=X-1,J=$.substring(Z.lineStarts[z-1],Z.lineStarts[z]).replace(/[\n\r]+$/,"");if(Q>=60&&J.length>80){let q=Math.min(Q-39,J.length-79);J="…"+J.substring(q),Q-=q-1}if(J.length>80)J=J.substring(0,79)+"…";if(z>1&&/^ *$/.test(J.substring(0,Q))){let q=$.substring(Z.lineStarts[z-2],Z.lineStarts[z-1]);if(q.length>80)q=q.substring(0,79)+`…
58
- `;J=q+J}if(/[^ ]/.test(J)){let q=1,H=U.linePos[1];if(H?.line===z&&H.col>X)q=Math.max(1,Math.min(H.col-X,80-Q));let G=" ".repeat(Q)+"^".repeat(q);U.message+=`:
57
+ `}VU.stringifyDocument=BU});var U$=I((PU)=>{var LU=m0(),A0=T$(),u=b(),OU=$0(),_U=o(),DU=o9(),IU=X4(),e9=M$(),RU=I9(),MU=p0(),$2=D9();class Z2{constructor($,Z,U){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,u.NODE_TYPE,{value:u.DOC});let X=null;if(typeof Z==="function"||Array.isArray(Z))X=Z;else if(U===void 0&&Z)U=Z,Z=void 0;let z=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},U);this.options=z;let{version:Q}=z;if(U?._directives){if(this.directives=U._directives.atDocument(),this.directives.yaml.explicit)Q=this.directives.yaml.version}else this.directives=new $2.Directives({version:Q});this.setSchema(Q,U),this.contents=$===void 0?null:this.createNode($,X,U)}clone(){let $=Object.create(Z2.prototype,{[u.NODE_TYPE]:{value:u.DOC}});if($.commentBefore=this.commentBefore,$.comment=this.comment,$.errors=this.errors.slice(),$.warnings=this.warnings.slice(),$.options=Object.assign({},this.options),this.directives)$.directives=this.directives.clone();if($.schema=this.schema.clone(),$.contents=u.isNode(this.contents)?this.contents.clone($.schema):this.contents,this.range)$.range=this.range.slice();return $}add($){if(N0(this.contents))this.contents.add($)}addIn($,Z){if(N0(this.contents))this.contents.addIn($,Z)}createAlias($,Z){if(!$.anchor){let U=e9.anchorNames(this);$.anchor=!Z||U.has(Z)?e9.findNewAnchor(Z||"a",U):Z}return new LU.Alias($.anchor)}createNode($,Z,U){let X=void 0;if(typeof Z==="function")$=Z.call({"":$},"",$),X=Z;else if(Array.isArray(Z)){let V=(R)=>typeof R==="number"||R instanceof String||R instanceof Number,L=Z.filter(V).map(String);if(L.length>0)Z=Z.concat(L);X=Z}else if(U===void 0&&Z)U=Z,Z=void 0;let{aliasDuplicateObjects:z,anchorPrefix:Q,flow:J,keepUndefined:q,onTagObj:H,tag:G}=U??{},{onAnchor:W,setAnchors:Y,sourceObjects:B}=e9.createNodeAnchors(this,Q||"a"),O={aliasDuplicateObjects:z??!0,keepUndefined:q??!1,onAnchor:W,onTagObj:H,replacer:X,schema:this.schema,sourceObjects:B},_=MU.createNode($,G,O);if(J&&u.isCollection(_))_.flow=!0;return Y(),_}createPair($,Z,U={}){let X=this.createNode($,null,U),z=this.createNode(Z,null,U);return new OU.Pair(X,z)}delete($){return N0(this.contents)?this.contents.delete($):!1}deleteIn($){if(A0.isEmptyPath($)){if(this.contents==null)return!1;return this.contents=null,!0}return N0(this.contents)?this.contents.deleteIn($):!1}get($,Z){return u.isCollection(this.contents)?this.contents.get($,Z):void 0}getIn($,Z){if(A0.isEmptyPath($))return!Z&&u.isScalar(this.contents)?this.contents.value:this.contents;return u.isCollection(this.contents)?this.contents.getIn($,Z):void 0}has($){return u.isCollection(this.contents)?this.contents.has($):!1}hasIn($){if(A0.isEmptyPath($))return this.contents!==void 0;return u.isCollection(this.contents)?this.contents.hasIn($):!1}set($,Z){if(this.contents==null)this.contents=A0.collectionFromPath(this.schema,[$],Z);else if(N0(this.contents))this.contents.set($,Z)}setIn($,Z){if(A0.isEmptyPath($))this.contents=Z;else if(this.contents==null)this.contents=A0.collectionFromPath(this.schema,Array.from($),Z);else if(N0(this.contents))this.contents.setIn($,Z)}setSchema($,Z={}){if(typeof $==="number")$=String($);let U;switch($){case"1.1":if(this.directives)this.directives.yaml.version="1.1";else this.directives=new $2.Directives({version:"1.1"});U={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":if(this.directives)this.directives.yaml.version=$;else this.directives=new $2.Directives({version:$});U={resolveKnownTags:!0,schema:"core"};break;case null:if(this.directives)delete this.directives;U=null;break;default:{let X=JSON.stringify($);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${X}`)}}if(Z.schema instanceof Object)this.schema=Z.schema;else if(U)this.schema=new DU.Schema(Object.assign(U,Z));else throw Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:$,jsonArg:Z,mapAsMap:U,maxAliasCount:X,onAnchor:z,reviver:Q}={}){let J={anchors:new Map,doc:this,keep:!$,mapAsMap:U===!0,mapKeyWarned:!1,maxAliasCount:typeof X==="number"?X:100},q=_U.toJS(this.contents,Z??"",J);if(typeof z==="function")for(let{count:H,res:G}of J.anchors.values())z(G,H);return typeof Q==="function"?RU.applyReviver(Q,{"":q},"",q):q}toJSON($,Z){return this.toJS({json:!0,jsonArg:$,mapAsMap:!1,onAnchor:Z})}toString($={}){if(this.errors.length>0)throw Error("Document with errors cannot be stringified");if("indent"in $&&(!Number.isInteger($.indent)||Number($.indent)<=0)){let Z=JSON.stringify($.indent);throw Error(`"indent" option must be a positive integer, not ${Z}`)}return IU.stringifyDocument(this,$)}}function N0($){if(u.isCollection($))return!0;throw Error("Expected a YAML collection as document contents")}PU.Document=Z2});var X$=I((KU)=>{class r$ extends Error{constructor($,Z,U,X){super();this.name=$,this.code=U,this.message=X,this.pos=Z}}class z4 extends r${constructor($,Z,U){super("YAMLParseError",$,Z,U)}}class Q4 extends r${constructor($,Z,U){super("YAMLWarning",$,Z,U)}}var TU=($,Z)=>(U)=>{if(U.pos[0]===-1)return;U.linePos=U.pos.map((q)=>Z.linePos(q));let{line:X,col:z}=U.linePos[0];U.message+=` at line ${X}, column ${z}`;let Q=z-1,J=$.substring(Z.lineStarts[X-1],Z.lineStarts[X]).replace(/[\n\r]+$/,"");if(Q>=60&&J.length>80){let q=Math.min(Q-39,J.length-79);J="…"+J.substring(q),Q-=q-1}if(J.length>80)J=J.substring(0,79)+"…";if(X>1&&/^ *$/.test(J.substring(0,Q))){let q=$.substring(Z.lineStarts[X-2],Z.lineStarts[X-1]);if(q.length>80)q=q.substring(0,79)+`…
58
+ `;J=q+J}if(/[^ ]/.test(J)){let q=1,H=U.linePos[1];if(H?.line===X&&H.col>z)q=Math.max(1,Math.min(H.col-z,80-Q));let G=" ".repeat(Q)+"^".repeat(q);U.message+=`:
59
59
 
60
60
  ${J}
61
61
  ${G}
62
- `}};D7.YAMLError=i$;D7.YAMLParseError=$6;D7.YAMLWarning=Z6;D7.prettifyError=W7});var z$=_((M7)=>{function R7($,{flow:Z,indicator:U,next:z,offset:X,onError:Q,parentIndent:J,startOnNewline:q}){let H=!1,G=q,W=q,Y="",B="",L=!1,O=!1,V=null,D=null,R=null,P=null,K=null,A=null,F=null;for(let T of $){if(O){if(T.type!=="space"&&T.type!=="newline"&&T.type!=="comma")Q(T.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");O=!1}if(V){if(G&&T.type!=="comment"&&T.type!=="newline")Q(V,"TAB_AS_INDENT","Tabs are not allowed as indentation");V=null}switch(T.type){case"space":if(!Z&&(U!=="doc-start"||z?.type!=="flow-collection")&&T.source.includes("\t"))V=T;W=!0;break;case"comment":{if(!W)Q(T,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let b=T.source.substring(1)||" ";if(!Y)Y=b;else Y+=B+b;B="",G=!1;break}case"newline":if(G){if(Y)Y+=T.source;else if(!A||U!=="seq-item-ind")H=!0}else B+=T.source;if(G=!0,L=!0,D||R)P=T;W=!0;break;case"anchor":if(D)Q(T,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(T.source.endsWith(":"))Q(T.offset+T.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);D=T,F??(F=T.offset),G=!1,W=!1,O=!0;break;case"tag":{if(R)Q(T,"MULTIPLE_TAGS","A node can have at most one tag");R=T,F??(F=T.offset),G=!1,W=!1,O=!0;break}case U:if(D||R)Q(T,"BAD_PROP_ORDER",`Anchors and tags must be after the ${T.source} indicator`);if(A)Q(T,"UNEXPECTED_TOKEN",`Unexpected ${T.source} in ${Z??"collection"}`);A=T,G=U==="seq-item-ind"||U==="explicit-key-ind",W=!1;break;case"comma":if(Z){if(K)Q(T,"UNEXPECTED_TOKEN",`Unexpected , in ${Z}`);K=T,G=!1,W=!1;break}default:Q(T,"UNEXPECTED_TOKEN",`Unexpected ${T.type} token`),G=!1,W=!1}}let N=$[$.length-1],w=N?N.offset+N.source.length:X;if(O&&z&&z.type!=="space"&&z.type!=="newline"&&z.type!=="comma"&&(z.type!=="scalar"||z.source!==""))Q(z.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(V&&(G&&V.indent<=J||z?.type==="block-map"||z?.type==="block-seq"))Q(V,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:K,found:A,spaceBefore:H,comment:Y,hasNewline:L,anchor:D,tag:R,newlineAfterProp:P,end:w,start:F??w}}M7.resolveProps=R7});var r$=_((P7)=>{function $9($){if(!$)return null;switch($.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if($.source.includes(`
63
- `))return!0;if($.end){for(let Z of $.end)if(Z.type==="newline")return!0}return!1;case"flow-collection":for(let Z of $.items){for(let U of Z.start)if(U.type==="newline")return!0;if(Z.sep){for(let U of Z.sep)if(U.type==="newline")return!0}if($9(Z.key)||$9(Z.value))return!0}return!1;default:return!0}}P7.containsNewline=$9});var Z9=_((N7)=>{var K7=r$();function A7($,Z,U){if(Z?.type==="flow-collection"){let z=Z.end[0];if(z.indent===$&&(z.source==="]"||z.source==="}")&&K7.containsNewline(Z))U(z,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}N7.flowIndentCheck=A7});var U9=_((C7)=>{var U6=C();function b7($,Z,U){let{uniqueKeys:z}=$.options;if(z===!1)return!1;let X=typeof z==="function"?z:(Q,J)=>Q===J||U6.isScalar(Q)&&U6.isScalar(J)&&Q.value===J.value;return Z.some((Q)=>X(Q.key,U))}C7.mapIncludes=b7});var q6=_((f7)=>{var z6=$0(),S7=U0(),X6=z$(),E7=r$(),Q6=Z9(),g7=U9(),J6="All mapping items must start at the same column";function y7({composeNode:$,composeEmptyNode:Z},U,z,X,Q){let q=new(Q?.nodeClass??S7.YAMLMap)(U.schema);if(U.atRoot)U.atRoot=!1;let H=z.offset,G=null;for(let W of z.items){let{start:Y,key:B,sep:L,value:O}=W,V=X6.resolveProps(Y,{indicator:"explicit-key-ind",next:B??L?.[0],offset:H,onError:X,parentIndent:z.indent,startOnNewline:!0}),D=!V.found;if(D){if(B){if(B.type==="block-seq")X(H,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key");else if("indent"in B&&B.indent!==z.indent)X(H,"BAD_INDENT",J6)}if(!V.anchor&&!V.tag&&!L){if(G=V.end,V.comment)if(q.comment)q.comment+=`
64
- `+V.comment;else q.comment=V.comment;continue}if(V.newlineAfterProp||E7.containsNewline(B))X(B??Y[Y.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(V.found?.indent!==z.indent)X(H,"BAD_INDENT",J6);U.atKey=!0;let R=V.end,P=B?$(U,B,V,X):Z(U,R,Y,null,V,X);if(U.schema.compat)Q6.flowIndentCheck(z.indent,B,X);if(U.atKey=!1,g7.mapIncludes(U,q.items,P))X(R,"DUPLICATE_KEY","Map keys must be unique");let K=X6.resolveProps(L??[],{indicator:"map-value-ind",next:O,offset:P.range[2],onError:X,parentIndent:z.indent,startOnNewline:!B||B.type==="block-scalar"});if(H=K.end,K.found){if(D){if(O?.type==="block-map"&&!K.hasNewline)X(H,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(U.options.strict&&V.start<K.found.offset-1024)X(P.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let A=O?$(U,O,K,X):Z(U,H,L,null,K,X);if(U.schema.compat)Q6.flowIndentCheck(z.indent,O,X);H=A.range[2];let F=new z6.Pair(P,A);if(U.options.keepSourceTokens)F.srcToken=W;q.items.push(F)}else{if(D)X(P.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(K.comment)if(P.comment)P.comment+=`
65
- `+K.comment;else P.comment=K.comment;let A=new z6.Pair(P);if(U.options.keepSourceTokens)A.srcToken=W;q.items.push(A)}}if(G&&G<H)X(G,"IMPOSSIBLE","Map comment with trailing content");return q.range=[z.offset,H,G??H],q}f7.resolveBlockMap=y7});var H6=_((m7)=>{var h7=z0(),u7=z$(),k7=Z9();function v7({composeNode:$,composeEmptyNode:Z},U,z,X,Q){let q=new(Q?.nodeClass??h7.YAMLSeq)(U.schema);if(U.atRoot)U.atRoot=!1;if(U.atKey)U.atKey=!1;let H=z.offset,G=null;for(let{start:W,value:Y}of z.items){let B=u7.resolveProps(W,{indicator:"seq-item-ind",next:Y,offset:H,onError:X,parentIndent:z.indent,startOnNewline:!0});if(!B.found)if(B.anchor||B.tag||Y)if(Y?.type==="block-seq")X(B.end,"BAD_INDENT","All sequence items must start at the same column");else X(H,"MISSING_CHAR","Sequence item without - indicator");else{if(G=B.end,B.comment)q.comment=B.comment;continue}let L=Y?$(U,Y,B,X):Z(U,B.end,W,null,B,X);if(U.schema.compat)k7.flowIndentCheck(z.indent,Y,X);H=L.range[2],q.items.push(L)}return q.range=[z.offset,H,G??H],q}m7.resolveBlockSeq=v7});var w0=_((d7)=>{function l7($,Z,U,z){let X="";if($){let Q=!1,J="";for(let q of $){let{source:H,type:G}=q;switch(G){case"space":Q=!0;break;case"comment":{if(U&&!Q)z(q,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let W=H.substring(1)||" ";if(!X)X=W;else X+=J+W;J="";break}case"newline":if(X)J+=H;Q=!0;break;default:z(q,"UNEXPECTED_TOKEN",`Unexpected ${G} at node end`)}Z+=H.length}}return{comment:X,offset:Z}}d7.resolveEnd=l7});var B6=_((e7)=>{var a7=C(),s7=$0(),G6=U0(),i7=z0(),r7=w0(),Y6=z$(),n7=r$(),o7=U9(),z9="Block collections are not allowed within flow collections",X9=($)=>$&&($.type==="block-map"||$.type==="block-seq");function t7({composeNode:$,composeEmptyNode:Z},U,z,X,Q){let J=z.start.source==="{",q=J?"flow map":"flow sequence",G=new(Q?.nodeClass??(J?G6.YAMLMap:i7.YAMLSeq))(U.schema);G.flow=!0;let W=U.atRoot;if(W)U.atRoot=!1;if(U.atKey)U.atKey=!1;let Y=z.offset+z.start.source.length;for(let D=0;D<z.items.length;++D){let R=z.items[D],{start:P,key:K,sep:A,value:F}=R,N=Y6.resolveProps(P,{flow:q,indicator:"explicit-key-ind",next:K??A?.[0],offset:Y,onError:X,parentIndent:z.indent,startOnNewline:!1});if(!N.found){if(!N.anchor&&!N.tag&&!A&&!F){if(D===0&&N.comma)X(N.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${q}`);else if(D<z.items.length-1)X(N.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${q}`);if(N.comment)if(G.comment)G.comment+=`
66
- `+N.comment;else G.comment=N.comment;Y=N.end;continue}if(!J&&U.options.strict&&n7.containsNewline(K))X(K,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(D===0){if(N.comma)X(N.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${q}`)}else{if(!N.comma)X(N.start,"MISSING_CHAR",`Missing , between ${q} items`);if(N.comment){let w="";$:for(let T of P)switch(T.type){case"comma":case"space":break;case"comment":w=T.source.substring(1);break $;default:break $}if(w){let T=G.items[G.items.length-1];if(a7.isPair(T))T=T.value??T.key;if(T.comment)T.comment+=`
67
- `+w;else T.comment=w;N.comment=N.comment.substring(w.length+1)}}}if(!J&&!A&&!N.found){let w=F?$(U,F,N,X):Z(U,N.end,A,null,N,X);if(G.items.push(w),Y=w.range[2],X9(F))X(w.range,"BLOCK_IN_FLOW",z9)}else{U.atKey=!0;let w=N.end,T=K?$(U,K,N,X):Z(U,w,P,null,N,X);if(X9(K))X(T.range,"BLOCK_IN_FLOW",z9);U.atKey=!1;let b=Y6.resolveProps(A??[],{flow:q,indicator:"map-value-ind",next:F,offset:T.range[2],onError:X,parentIndent:z.indent,startOnNewline:!1});if(b.found){if(!J&&!N.found&&U.options.strict){if(A)for(let E of A){if(E===b.found)break;if(E.type==="newline"){X(E,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(N.start<b.found.offset-1024)X(b.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else if(F)if("source"in F&&F.source?.[0]===":")X(F,"MISSING_CHAR",`Missing space after : in ${q}`);else X(b.start,"MISSING_CHAR",`Missing , or : between ${q} items`);let p=F?$(U,F,b,X):b.found?Z(U,b.end,A,null,b,X):null;if(p){if(X9(F))X(p.range,"BLOCK_IN_FLOW",z9)}else if(b.comment)if(T.comment)T.comment+=`
68
- `+b.comment;else T.comment=b.comment;let l=new s7.Pair(T,p);if(U.options.keepSourceTokens)l.srcToken=R;if(J){let E=G;if(o7.mapIncludes(U,E.items,T))X(w,"DUPLICATE_KEY","Map keys must be unique");E.items.push(l)}else{let E=new G6.YAMLMap(U.schema);E.flow=!0,E.items.push(l);let E0=(p??T).range;E.range=[T.range[0],E0[1],E0[2]],G.items.push(E)}Y=p?p.range[2]:b.end}}let B=J?"}":"]",[L,...O]=z.end,V=Y;if(L?.source===B)V=L.offset+L.source.length;else{let D=q[0].toUpperCase()+q.substring(1),R=W?`${D} must end with a ${B}`:`${D} in block collection must be sufficiently indented and end with a ${B}`;if(X(Y,W?"MISSING_CHAR":"BAD_INDENT",R),L&&L.source.length!==1)O.unshift(L)}if(O.length>0){let D=r7.resolveEnd(O,V,U.options.strict,X);if(D.comment)if(G.comment)G.comment+=`
69
- `+D.comment;else G.comment=D.comment;G.range=[z.offset,V,D.offset]}else G.range=[z.offset,V,V];return G}e7.resolveFlowCollection=t7});var V6=_((Gz)=>{var Zz=C(),Uz=g(),zz=U0(),Xz=z0(),Qz=q6(),Jz=H6(),qz=B6();function Q9($,Z,U,z,X,Q){let J=U.type==="block-map"?Qz.resolveBlockMap($,Z,U,z,Q):U.type==="block-seq"?Jz.resolveBlockSeq($,Z,U,z,Q):qz.resolveFlowCollection($,Z,U,z,Q),q=J.constructor;if(X==="!"||X===q.tagName)return J.tag=q.tagName,J;if(X)J.tag=X;return J}function Hz($,Z,U,z,X){let Q=z.tag,J=!Q?null:Z.directives.tagName(Q.source,(B)=>X(Q,"TAG_RESOLVE_FAILED",B));if(U.type==="block-seq"){let{anchor:B,newlineAfterProp:L}=z,O=B&&Q?B.offset>Q.offset?B:Q:B??Q;if(O&&(!L||L.offset<O.offset))X(O,"MISSING_CHAR","Missing newline after block sequence props")}let q=U.type==="block-map"?"map":U.type==="block-seq"?"seq":U.start.source==="{"?"map":"seq";if(!Q||!J||J==="!"||J===zz.YAMLMap.tagName&&q==="map"||J===Xz.YAMLSeq.tagName&&q==="seq")return Q9($,Z,U,X,J);let H=Z.schema.tags.find((B)=>B.tag===J&&B.collection===q);if(!H){let B=Z.schema.knownTags[J];if(B?.collection===q)Z.schema.tags.push(Object.assign({},B,{default:!1})),H=B;else{if(B)X(Q,"BAD_COLLECTION_TYPE",`${B.tag} used for ${q} collection, but expects ${B.collection??"scalar"}`,!0);else X(Q,"TAG_RESOLVE_FAILED",`Unresolved tag: ${J}`,!0);return Q9($,Z,U,X,J)}}let G=Q9($,Z,U,X,J,H),W=H.resolve?.(G,(B)=>X(Q,"TAG_RESOLVE_FAILED",B),Z.options)??G,Y=Zz.isNode(W)?W:new Uz.Scalar(W);if(Y.range=G.range,Y.tag=J,H?.format)Y.format=H.format;return Y}Gz.composeCollection=Hz});var q9=_((Dz)=>{var J9=g();function Bz($,Z,U){let z=Z.offset,X=Vz(Z,$.options.strict,U);if(!X)return{value:"",type:null,comment:"",range:[z,z,z]};let Q=X.mode===">"?J9.Scalar.BLOCK_FOLDED:J9.Scalar.BLOCK_LITERAL,J=Z.source?Wz(Z.source):[],q=J.length;for(let V=J.length-1;V>=0;--V){let D=J[V][1];if(D===""||D==="\r")q=V;else break}if(q===0){let V=X.chomp==="+"&&J.length>0?`
70
- `.repeat(Math.max(1,J.length-1)):"",D=z+X.length;if(Z.source)D+=Z.source.length;return{value:V,type:Q,comment:X.comment,range:[z,D,D]}}let H=Z.indent+X.indent,G=Z.offset+X.length,W=0;for(let V=0;V<q;++V){let[D,R]=J[V];if(R===""||R==="\r"){if(X.indent===0&&D.length>H)H=D.length}else{if(D.length<H)U(G+D.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(X.indent===0)H=D.length;if(W=V,H===0&&!$.atRoot)U(G,"BAD_INDENT","Block scalar values in collections must be indented");break}G+=D.length+R.length+1}for(let V=J.length-1;V>=q;--V)if(J[V][0].length>H)q=V+1;let Y="",B="",L=!1;for(let V=0;V<W;++V)Y+=J[V][0].slice(H)+`
71
- `;for(let V=W;V<q;++V){let[D,R]=J[V];G+=D.length+R.length+1;let P=R[R.length-1]==="\r";if(P)R=R.slice(0,-1);if(R&&D.length<H){let A=`Block scalar lines must not be less indented than their ${X.indent?"explicit indentation indicator":"first line"}`;U(G-R.length-(P?2:1),"BAD_INDENT",A),D=""}if(Q===J9.Scalar.BLOCK_LITERAL)Y+=B+D.slice(H)+R,B=`
72
- `;else if(D.length>H||R[0]==="\t"){if(B===" ")B=`
73
- `;else if(!L&&B===`
62
+ `}};KU.YAMLError=r$;KU.YAMLParseError=z4;KU.YAMLWarning=Q4;KU.prettifyError=TU});var z$=I((jU)=>{function CU($,{flow:Z,indicator:U,next:X,offset:z,onError:Q,parentIndent:J,startOnNewline:q}){let H=!1,G=q,W=q,Y="",B="",O=!1,_=!1,V=null,L=null,R=null,M=null,T=null,A=null,K=null;for(let D of $){if(_){if(D.type!=="space"&&D.type!=="newline"&&D.type!=="comma")Q(D.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");_=!1}if(V){if(G&&D.type!=="comment"&&D.type!=="newline")Q(V,"TAB_AS_INDENT","Tabs are not allowed as indentation");V=null}switch(D.type){case"space":if(!Z&&(U!=="doc-start"||X?.type!=="flow-collection")&&D.source.includes("\t"))V=D;W=!0;break;case"comment":{if(!W)Q(D,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let w=D.source.substring(1)||" ";if(!Y)Y=w;else Y+=B+w;B="",G=!1;break}case"newline":if(G){if(Y)Y+=D.source;else if(!A||U!=="seq-item-ind")H=!0}else B+=D.source;if(G=!0,O=!0,L||R)M=D;W=!0;break;case"anchor":if(L)Q(D,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(D.source.endsWith(":"))Q(D.offset+D.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);L=D,K??(K=D.offset),G=!1,W=!1,_=!0;break;case"tag":{if(R)Q(D,"MULTIPLE_TAGS","A node can have at most one tag");R=D,K??(K=D.offset),G=!1,W=!1,_=!0;break}case U:if(L||R)Q(D,"BAD_PROP_ORDER",`Anchors and tags must be after the ${D.source} indicator`);if(A)Q(D,"UNEXPECTED_TOKEN",`Unexpected ${D.source} in ${Z??"collection"}`);A=D,G=U==="seq-item-ind"||U==="explicit-key-ind",W=!1;break;case"comma":if(Z){if(T)Q(D,"UNEXPECTED_TOKEN",`Unexpected , in ${Z}`);T=D,G=!1,W=!1;break}default:Q(D,"UNEXPECTED_TOKEN",`Unexpected ${D.type} token`),G=!1,W=!1}}let N=$[$.length-1],C=N?N.offset+N.source.length:z;if(_&&X&&X.type!=="space"&&X.type!=="newline"&&X.type!=="comma"&&(X.type!=="scalar"||X.source!==""))Q(X.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(V&&(G&&V.indent<=J||X?.type==="block-map"||X?.type==="block-seq"))Q(V,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:T,found:A,spaceBefore:H,comment:Y,hasNewline:O,anchor:L,tag:R,newlineAfterProp:M,end:C,start:K??C}}jU.resolveProps=CU});var n$=I((EU)=>{function U2($){if(!$)return null;switch($.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if($.source.includes(`
63
+ `))return!0;if($.end){for(let Z of $.end)if(Z.type==="newline")return!0}return!1;case"flow-collection":for(let Z of $.items){for(let U of Z.start)if(U.type==="newline")return!0;if(Z.sep){for(let U of Z.sep)if(U.type==="newline")return!0}if(U2(Z.key)||U2(Z.value))return!0}return!1;default:return!0}}EU.containsNewline=U2});var X2=I((xU)=>{var fU=n$();function yU($,Z,U){if(Z?.type==="flow-collection"){let X=Z.end[0];if(X.indent===$&&(X.source==="]"||X.source==="}")&&fU.containsNewline(Z))U(X,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}xU.flowIndentCheck=yU});var z2=I((kU)=>{var J4=b();function uU($,Z,U){let{uniqueKeys:X}=$.options;if(X===!1)return!1;let z=typeof X==="function"?X:(Q,J)=>Q===J||J4.isScalar(Q)&&J4.isScalar(J)&&Q.value===J.value;return Z.some((Q)=>z(Q.key,U))}kU.mapIncludes=uU});var B4=I((cU)=>{var q4=$0(),mU=U0(),H4=z$(),pU=n$(),G4=X2(),lU=z2(),Y4="All mapping items must start at the same column";function dU({composeNode:$,composeEmptyNode:Z},U,X,z,Q){let q=new(Q?.nodeClass??mU.YAMLMap)(U.schema);if(U.atRoot)U.atRoot=!1;let H=X.offset,G=null;for(let W of X.items){let{start:Y,key:B,sep:O,value:_}=W,V=H4.resolveProps(Y,{indicator:"explicit-key-ind",next:B??O?.[0],offset:H,onError:z,parentIndent:X.indent,startOnNewline:!0}),L=!V.found;if(L){if(B){if(B.type==="block-seq")z(H,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key");else if("indent"in B&&B.indent!==X.indent)z(H,"BAD_INDENT",Y4)}if(!V.anchor&&!V.tag&&!O){if(G=V.end,V.comment)if(q.comment)q.comment+=`
64
+ `+V.comment;else q.comment=V.comment;continue}if(V.newlineAfterProp||pU.containsNewline(B))z(B??Y[Y.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(V.found?.indent!==X.indent)z(H,"BAD_INDENT",Y4);U.atKey=!0;let R=V.end,M=B?$(U,B,V,z):Z(U,R,Y,null,V,z);if(U.schema.compat)G4.flowIndentCheck(X.indent,B,z);if(U.atKey=!1,lU.mapIncludes(U,q.items,M))z(R,"DUPLICATE_KEY","Map keys must be unique");let T=H4.resolveProps(O??[],{indicator:"map-value-ind",next:_,offset:M.range[2],onError:z,parentIndent:X.indent,startOnNewline:!B||B.type==="block-scalar"});if(H=T.end,T.found){if(L){if(_?.type==="block-map"&&!T.hasNewline)z(H,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(U.options.strict&&V.start<T.found.offset-1024)z(M.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let A=_?$(U,_,T,z):Z(U,H,O,null,T,z);if(U.schema.compat)G4.flowIndentCheck(X.indent,_,z);H=A.range[2];let K=new q4.Pair(M,A);if(U.options.keepSourceTokens)K.srcToken=W;q.items.push(K)}else{if(L)z(M.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(T.comment)if(M.comment)M.comment+=`
65
+ `+T.comment;else M.comment=T.comment;let A=new q4.Pair(M);if(U.options.keepSourceTokens)A.srcToken=W;q.items.push(A)}}if(G&&G<H)z(G,"IMPOSSIBLE","Map comment with trailing content");return q.range=[X.offset,H,G??H],q}cU.resolveBlockMap=dU});var V4=I((oU)=>{var sU=X0(),iU=z$(),rU=X2();function nU({composeNode:$,composeEmptyNode:Z},U,X,z,Q){let q=new(Q?.nodeClass??sU.YAMLSeq)(U.schema);if(U.atRoot)U.atRoot=!1;if(U.atKey)U.atKey=!1;let H=X.offset,G=null;for(let{start:W,value:Y}of X.items){let B=iU.resolveProps(W,{indicator:"seq-item-ind",next:Y,offset:H,onError:z,parentIndent:X.indent,startOnNewline:!0});if(!B.found)if(B.anchor||B.tag||Y)if(Y?.type==="block-seq")z(B.end,"BAD_INDENT","All sequence items must start at the same column");else z(H,"MISSING_CHAR","Sequence item without - indicator");else{if(G=B.end,B.comment)q.comment=B.comment;continue}let O=Y?$(U,Y,B,z):Z(U,B.end,W,null,B,z);if(U.schema.compat)rU.flowIndentCheck(X.indent,Y,z);H=O.range[2],q.items.push(O)}return q.range=[X.offset,H,G??H],q}oU.resolveBlockSeq=nU});var w0=I(($X)=>{function eU($,Z,U,X){let z="";if($){let Q=!1,J="";for(let q of $){let{source:H,type:G}=q;switch(G){case"space":Q=!0;break;case"comment":{if(U&&!Q)X(q,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let W=H.substring(1)||" ";if(!z)z=W;else z+=J+W;J="";break}case"newline":if(z)J+=H;Q=!0;break;default:X(q,"UNEXPECTED_TOKEN",`Unexpected ${G} at node end`)}Z+=H.length}}return{comment:z,offset:Z}}$X.resolveEnd=eU});var O4=I((GX)=>{var UX=b(),XX=$0(),W4=U0(),zX=X0(),QX=w0(),L4=z$(),JX=n$(),qX=z2(),Q2="Block collections are not allowed within flow collections",J2=($)=>$&&($.type==="block-map"||$.type==="block-seq");function HX({composeNode:$,composeEmptyNode:Z},U,X,z,Q){let J=X.start.source==="{",q=J?"flow map":"flow sequence",G=new(Q?.nodeClass??(J?W4.YAMLMap:zX.YAMLSeq))(U.schema);G.flow=!0;let W=U.atRoot;if(W)U.atRoot=!1;if(U.atKey)U.atKey=!1;let Y=X.offset+X.start.source.length;for(let L=0;L<X.items.length;++L){let R=X.items[L],{start:M,key:T,sep:A,value:K}=R,N=L4.resolveProps(M,{flow:q,indicator:"explicit-key-ind",next:T??A?.[0],offset:Y,onError:z,parentIndent:X.indent,startOnNewline:!1});if(!N.found){if(!N.anchor&&!N.tag&&!A&&!K){if(L===0&&N.comma)z(N.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${q}`);else if(L<X.items.length-1)z(N.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${q}`);if(N.comment)if(G.comment)G.comment+=`
66
+ `+N.comment;else G.comment=N.comment;Y=N.end;continue}if(!J&&U.options.strict&&JX.containsNewline(T))z(T,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(L===0){if(N.comma)z(N.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${q}`)}else{if(!N.comma)z(N.start,"MISSING_CHAR",`Missing , between ${q} items`);if(N.comment){let C="";$:for(let D of M)switch(D.type){case"comma":case"space":break;case"comment":C=D.source.substring(1);break $;default:break $}if(C){let D=G.items[G.items.length-1];if(UX.isPair(D))D=D.value??D.key;if(D.comment)D.comment+=`
67
+ `+C;else D.comment=C;N.comment=N.comment.substring(C.length+1)}}}if(!J&&!A&&!N.found){let C=K?$(U,K,N,z):Z(U,N.end,A,null,N,z);if(G.items.push(C),Y=C.range[2],J2(K))z(C.range,"BLOCK_IN_FLOW",Q2)}else{U.atKey=!0;let C=N.end,D=T?$(U,T,N,z):Z(U,C,M,null,N,z);if(J2(T))z(D.range,"BLOCK_IN_FLOW",Q2);U.atKey=!1;let w=L4.resolveProps(A??[],{flow:q,indicator:"map-value-ind",next:K,offset:D.range[2],onError:z,parentIndent:X.indent,startOnNewline:!1});if(w.found){if(!J&&!N.found&&U.options.strict){if(A)for(let E of A){if(E===w.found)break;if(E.type==="newline"){z(E,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(N.start<w.found.offset-1024)z(w.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else if(K)if("source"in K&&K.source?.[0]===":")z(K,"MISSING_CHAR",`Missing space after : in ${q}`);else z(w.start,"MISSING_CHAR",`Missing , or : between ${q} items`);let p=K?$(U,K,w,z):w.found?Z(U,w.end,A,null,w,z):null;if(p){if(J2(K))z(p.range,"BLOCK_IN_FLOW",Q2)}else if(w.comment)if(D.comment)D.comment+=`
68
+ `+w.comment;else D.comment=w.comment;let l=new XX.Pair(D,p);if(U.options.keepSourceTokens)l.srcToken=R;if(J){let E=G;if(qX.mapIncludes(U,E.items,D))z(C,"DUPLICATE_KEY","Map keys must be unique");E.items.push(l)}else{let E=new W4.YAMLMap(U.schema);E.flow=!0,E.items.push(l);let g0=(p??D).range;E.range=[D.range[0],g0[1],g0[2]],G.items.push(E)}Y=p?p.range[2]:w.end}}let B=J?"}":"]",[O,..._]=X.end,V=Y;if(O?.source===B)V=O.offset+O.source.length;else{let L=q[0].toUpperCase()+q.substring(1),R=W?`${L} must end with a ${B}`:`${L} in block collection must be sufficiently indented and end with a ${B}`;if(z(Y,W?"MISSING_CHAR":"BAD_INDENT",R),O&&O.source.length!==1)_.unshift(O)}if(_.length>0){let L=QX.resolveEnd(_,V,U.options.strict,z);if(L.comment)if(G.comment)G.comment+=`
69
+ `+L.comment;else G.comment=L.comment;G.range=[X.offset,V,L.offset]}else G.range=[X.offset,V,V];return G}GX.resolveFlowCollection=HX});var _4=I((RX)=>{var BX=b(),VX=g(),WX=U0(),LX=X0(),OX=B4(),_X=V4(),DX=O4();function q2($,Z,U,X,z,Q){let J=U.type==="block-map"?OX.resolveBlockMap($,Z,U,X,Q):U.type==="block-seq"?_X.resolveBlockSeq($,Z,U,X,Q):DX.resolveFlowCollection($,Z,U,X,Q),q=J.constructor;if(z==="!"||z===q.tagName)return J.tag=q.tagName,J;if(z)J.tag=z;return J}function IX($,Z,U,X,z){let Q=X.tag,J=!Q?null:Z.directives.tagName(Q.source,(B)=>z(Q,"TAG_RESOLVE_FAILED",B));if(U.type==="block-seq"){let{anchor:B,newlineAfterProp:O}=X,_=B&&Q?B.offset>Q.offset?B:Q:B??Q;if(_&&(!O||O.offset<_.offset))z(_,"MISSING_CHAR","Missing newline after block sequence props")}let q=U.type==="block-map"?"map":U.type==="block-seq"?"seq":U.start.source==="{"?"map":"seq";if(!Q||!J||J==="!"||J===WX.YAMLMap.tagName&&q==="map"||J===LX.YAMLSeq.tagName&&q==="seq")return q2($,Z,U,z,J);let H=Z.schema.tags.find((B)=>B.tag===J&&B.collection===q);if(!H){let B=Z.schema.knownTags[J];if(B?.collection===q)Z.schema.tags.push(Object.assign({},B,{default:!1})),H=B;else{if(B)z(Q,"BAD_COLLECTION_TYPE",`${B.tag} used for ${q} collection, but expects ${B.collection??"scalar"}`,!0);else z(Q,"TAG_RESOLVE_FAILED",`Unresolved tag: ${J}`,!0);return q2($,Z,U,z,J)}}let G=q2($,Z,U,z,J,H),W=H.resolve?.(G,(B)=>z(Q,"TAG_RESOLVE_FAILED",B),Z.options)??G,Y=BX.isNode(W)?W:new VX.Scalar(W);if(Y.range=G.range,Y.tag=J,H?.format)Y.format=H.format;return Y}RX.composeCollection=IX});var G2=I((KX)=>{var H2=g();function PX($,Z,U){let X=Z.offset,z=FX(Z,$.options.strict,U);if(!z)return{value:"",type:null,comment:"",range:[X,X,X]};let Q=z.mode===">"?H2.Scalar.BLOCK_FOLDED:H2.Scalar.BLOCK_LITERAL,J=Z.source?TX(Z.source):[],q=J.length;for(let V=J.length-1;V>=0;--V){let L=J[V][1];if(L===""||L==="\r")q=V;else break}if(q===0){let V=z.chomp==="+"&&J.length>0?`
70
+ `.repeat(Math.max(1,J.length-1)):"",L=X+z.length;if(Z.source)L+=Z.source.length;return{value:V,type:Q,comment:z.comment,range:[X,L,L]}}let H=Z.indent+z.indent,G=Z.offset+z.length,W=0;for(let V=0;V<q;++V){let[L,R]=J[V];if(R===""||R==="\r"){if(z.indent===0&&L.length>H)H=L.length}else{if(L.length<H)U(G+L.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(z.indent===0)H=L.length;if(W=V,H===0&&!$.atRoot)U(G,"BAD_INDENT","Block scalar values in collections must be indented");break}G+=L.length+R.length+1}for(let V=J.length-1;V>=q;--V)if(J[V][0].length>H)q=V+1;let Y="",B="",O=!1;for(let V=0;V<W;++V)Y+=J[V][0].slice(H)+`
71
+ `;for(let V=W;V<q;++V){let[L,R]=J[V];G+=L.length+R.length+1;let M=R[R.length-1]==="\r";if(M)R=R.slice(0,-1);if(R&&L.length<H){let A=`Block scalar lines must not be less indented than their ${z.indent?"explicit indentation indicator":"first line"}`;U(G-R.length-(M?2:1),"BAD_INDENT",A),L=""}if(Q===H2.Scalar.BLOCK_LITERAL)Y+=B+L.slice(H)+R,B=`
72
+ `;else if(L.length>H||R[0]==="\t"){if(B===" ")B=`
73
+ `;else if(!O&&B===`
74
74
  `)B=`
75
75
 
76
- `;Y+=B+D.slice(H)+R,B=`
77
- `,L=!0}else if(R==="")if(B===`
76
+ `;Y+=B+L.slice(H)+R,B=`
77
+ `,O=!0}else if(R==="")if(B===`
78
78
  `)Y+=`
79
79
  `;else B=`
80
- `;else Y+=B+R,B=" ",L=!1}switch(X.chomp){case"-":break;case"+":for(let V=q;V<J.length;++V)Y+=`
80
+ `;else Y+=B+R,B=" ",O=!1}switch(z.chomp){case"-":break;case"+":for(let V=q;V<J.length;++V)Y+=`
81
81
  `+J[V][0].slice(H);if(Y[Y.length-1]!==`
82
82
  `)Y+=`
83
83
  `;break;default:Y+=`
84
- `}let O=z+X.length+Z.source.length;return{value:Y,type:Q,comment:X.comment,range:[z,O,O]}}function Vz({offset:$,props:Z},U,z){if(Z[0].type!=="block-scalar-header")return z(Z[0],"IMPOSSIBLE","Block scalar header not found"),null;let{source:X}=Z[0],Q=X[0],J=0,q="",H=-1;for(let B=1;B<X.length;++B){let L=X[B];if(!q&&(L==="-"||L==="+"))q=L;else{let O=Number(L);if(!J&&O)J=O;else if(H===-1)H=$+B}}if(H!==-1)z(H,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${X}`);let G=!1,W="",Y=X.length;for(let B=1;B<Z.length;++B){let L=Z[B];switch(L.type){case"space":G=!0;case"newline":Y+=L.source.length;break;case"comment":if(U&&!G)z(L,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");Y+=L.source.length,W=L.source.substring(1);break;case"error":z(L,"UNEXPECTED_TOKEN",L.message),Y+=L.source.length;break;default:{let O=`Unexpected token in block scalar header: ${L.type}`;z(L,"UNEXPECTED_TOKEN",O);let V=L.source;if(V&&typeof V==="string")Y+=V.length}}}return{mode:Q,indent:J,chomp:q,comment:W,length:Y}}function Wz($){let Z=$.split(/\n( *)/),U=Z[0],z=U.match(/^( *)/),Q=[z?.[1]?[z[1],U.slice(z[1].length)]:["",U]];for(let J=1;J<Z.length;J+=2)Q.push([Z[J],Z[J+1]]);return Q}Dz.resolveBlockScalar=Bz});var G9=_((Kz)=>{var H9=g(),Oz=w0();function _z($,Z,U){let{offset:z,type:X,source:Q,end:J}=$,q,H,G=(B,L,O)=>U(z+B,L,O);switch(X){case"scalar":q=H9.Scalar.PLAIN,H=Iz(Q,G);break;case"single-quoted-scalar":q=H9.Scalar.QUOTE_SINGLE,H=Rz(Q,G);break;case"double-quoted-scalar":q=H9.Scalar.QUOTE_DOUBLE,H=Mz(Q,G);break;default:return U($,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${X}`),{value:"",type:null,comment:"",range:[z,z+Q.length,z+Q.length]}}let W=z+Q.length,Y=Oz.resolveEnd(J,W,Z,U);return{value:H,type:q,comment:Y.comment,range:[z,W,Y.offset]}}function Iz($,Z){let U="";switch($[0]){case"\t":U="a tab character";break;case",":U="flow indicator character ,";break;case"%":U="directive indicator character %";break;case"|":case">":{U=`block scalar indicator ${$[0]}`;break}case"@":case"`":{U=`reserved character ${$[0]}`;break}}if(U)Z(0,"BAD_SCALAR_START",`Plain value cannot start with ${U}`);return W6($)}function Rz($,Z){if($[$.length-1]!=="'"||$.length===1)Z($.length,"MISSING_CHAR","Missing closing 'quote");return W6($.slice(1,-1)).replace(/''/g,"'")}function W6($){let Z,U;try{Z=new RegExp(`(.*?)(?<![ ])[ ]*\r?
84
+ `}let _=X+z.length+Z.source.length;return{value:Y,type:Q,comment:z.comment,range:[X,_,_]}}function FX({offset:$,props:Z},U,X){if(Z[0].type!=="block-scalar-header")return X(Z[0],"IMPOSSIBLE","Block scalar header not found"),null;let{source:z}=Z[0],Q=z[0],J=0,q="",H=-1;for(let B=1;B<z.length;++B){let O=z[B];if(!q&&(O==="-"||O==="+"))q=O;else{let _=Number(O);if(!J&&_)J=_;else if(H===-1)H=$+B}}if(H!==-1)X(H,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${z}`);let G=!1,W="",Y=z.length;for(let B=1;B<Z.length;++B){let O=Z[B];switch(O.type){case"space":G=!0;case"newline":Y+=O.source.length;break;case"comment":if(U&&!G)X(O,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");Y+=O.source.length,W=O.source.substring(1);break;case"error":X(O,"UNEXPECTED_TOKEN",O.message),Y+=O.source.length;break;default:{let _=`Unexpected token in block scalar header: ${O.type}`;X(O,"UNEXPECTED_TOKEN",_);let V=O.source;if(V&&typeof V==="string")Y+=V.length}}}return{mode:Q,indent:J,chomp:q,comment:W,length:Y}}function TX($){let Z=$.split(/\n( *)/),U=Z[0],X=U.match(/^( *)/),Q=[X?.[1]?[X[1],U.slice(X[1].length)]:["",U]];for(let J=1;J<Z.length;J+=2)Q.push([Z[J],Z[J+1]]);return Q}KX.resolveBlockScalar=PX});var B2=I((fX)=>{var Y2=g(),NX=w0();function wX($,Z,U){let{offset:X,type:z,source:Q,end:J}=$,q,H,G=(B,O,_)=>U(X+B,O,_);switch(z){case"scalar":q=Y2.Scalar.PLAIN,H=bX(Q,G);break;case"single-quoted-scalar":q=Y2.Scalar.QUOTE_SINGLE,H=CX(Q,G);break;case"double-quoted-scalar":q=Y2.Scalar.QUOTE_DOUBLE,H=jX(Q,G);break;default:return U($,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${z}`),{value:"",type:null,comment:"",range:[X,X+Q.length,X+Q.length]}}let W=X+Q.length,Y=NX.resolveEnd(J,W,Z,U);return{value:H,type:q,comment:Y.comment,range:[X,W,Y.offset]}}function bX($,Z){let U="";switch($[0]){case"\t":U="a tab character";break;case",":U="flow indicator character ,";break;case"%":U="directive indicator character %";break;case"|":case">":{U=`block scalar indicator ${$[0]}`;break}case"@":case"`":{U=`reserved character ${$[0]}`;break}}if(U)Z(0,"BAD_SCALAR_START",`Plain value cannot start with ${U}`);return D4($)}function CX($,Z){if($[$.length-1]!=="'"||$.length===1)Z($.length,"MISSING_CHAR","Missing closing 'quote");return D4($.slice(1,-1)).replace(/''/g,"'")}function D4($){let Z,U;try{Z=new RegExp(`(.*?)(?<![ ])[ ]*\r?
85
85
  `,"sy"),U=new RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
86
- `,"sy")}catch{Z=/(.*?)[ \t]*\r?\n/sy,U=/[ \t]*(.*?)[ \t]*\r?\n/sy}let z=Z.exec($);if(!z)return $;let X=z[1],Q=" ",J=Z.lastIndex;U.lastIndex=J;while(z=U.exec($)){if(z[1]==="")if(Q===`
87
- `)X+=Q;else Q=`
88
- `;else X+=Q+z[1],Q=" ";J=U.lastIndex}let q=/[ \t]*(.*)/sy;return q.lastIndex=J,z=q.exec($),X+Q+(z?.[1]??"")}function Mz($,Z){let U="";for(let z=1;z<$.length-1;++z){let X=$[z];if(X==="\r"&&$[z+1]===`
89
- `)continue;if(X===`
90
- `){let{fold:Q,offset:J}=Tz($,z);U+=Q,z=J}else if(X==="\\"){let Q=$[++z],J=Pz[Q];if(J)U+=J;else if(Q===`
91
- `){Q=$[z+1];while(Q===" "||Q==="\t")Q=$[++z+1]}else if(Q==="\r"&&$[z+1]===`
92
- `){Q=$[++z+1];while(Q===" "||Q==="\t")Q=$[++z+1]}else if(Q==="x"||Q==="u"||Q==="U"){let q={x:2,u:4,U:8}[Q];U+=Fz($,z+1,q,Z),z+=q}else{let q=$.substr(z-1,2);Z(z-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${q}`),U+=q}}else if(X===" "||X==="\t"){let Q=z,J=$[z+1];while(J===" "||J==="\t")J=$[++z+1];if(J!==`
93
- `&&!(J==="\r"&&$[z+2]===`
94
- `))U+=z>Q?$.slice(Q,z+1):X}else U+=X}if($[$.length-1]!=='"'||$.length===1)Z($.length,"MISSING_CHAR",'Missing closing "quote');return U}function Tz($,Z){let U="",z=$[Z+1];while(z===" "||z==="\t"||z===`
95
- `||z==="\r"){if(z==="\r"&&$[Z+2]!==`
96
- `)break;if(z===`
86
+ `,"sy")}catch{Z=/(.*?)[ \t]*\r?\n/sy,U=/[ \t]*(.*?)[ \t]*\r?\n/sy}let X=Z.exec($);if(!X)return $;let z=X[1],Q=" ",J=Z.lastIndex;U.lastIndex=J;while(X=U.exec($)){if(X[1]==="")if(Q===`
87
+ `)z+=Q;else Q=`
88
+ `;else z+=Q+X[1],Q=" ";J=U.lastIndex}let q=/[ \t]*(.*)/sy;return q.lastIndex=J,X=q.exec($),z+Q+(X?.[1]??"")}function jX($,Z){let U="";for(let X=1;X<$.length-1;++X){let z=$[X];if(z==="\r"&&$[X+1]===`
89
+ `)continue;if(z===`
90
+ `){let{fold:Q,offset:J}=SX($,X);U+=Q,X=J}else if(z==="\\"){let Q=$[++X],J=EX[Q];if(J)U+=J;else if(Q===`
91
+ `){Q=$[X+1];while(Q===" "||Q==="\t")Q=$[++X+1]}else if(Q==="\r"&&$[X+1]===`
92
+ `){Q=$[++X+1];while(Q===" "||Q==="\t")Q=$[++X+1]}else if(Q==="x"||Q==="u"||Q==="U"){let q={x:2,u:4,U:8}[Q];U+=gX($,X+1,q,Z),X+=q}else{let q=$.substr(X-1,2);Z(X-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${q}`),U+=q}}else if(z===" "||z==="\t"){let Q=X,J=$[X+1];while(J===" "||J==="\t")J=$[++X+1];if(J!==`
93
+ `&&!(J==="\r"&&$[X+2]===`
94
+ `))U+=X>Q?$.slice(Q,X+1):z}else U+=z}if($[$.length-1]!=='"'||$.length===1)Z($.length,"MISSING_CHAR",'Missing closing "quote');return U}function SX($,Z){let U="",X=$[Z+1];while(X===" "||X==="\t"||X===`
95
+ `||X==="\r"){if(X==="\r"&&$[Z+2]!==`
96
+ `)break;if(X===`
97
97
  `)U+=`
98
- `;Z+=1,z=$[Z+1]}if(!U)U=" ";return{fold:U,offset:Z}}var Pz={"0":"\x00",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
99
- `,r:"\r",t:"\t",v:"\v",N:"…",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function Fz($,Z,U,z){let X=$.substr(Z,U),J=X.length===U&&/^[0-9a-fA-F]+$/.test(X)?parseInt(X,16):NaN;if(isNaN(J)){let q=$.substr(Z-2,U+2);return z(Z-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${q}`),q}return String.fromCodePoint(J)}Kz.resolveFlowScalar=_z});var L6=_((Sz)=>{var B0=C(),D6=g(),Nz=q9(),wz=G9();function bz($,Z,U,z){let{value:X,type:Q,comment:J,range:q}=Z.type==="block-scalar"?Nz.resolveBlockScalar($,Z,z):wz.resolveFlowScalar(Z,$.options.strict,z),H=U?$.directives.tagName(U.source,(Y)=>z(U,"TAG_RESOLVE_FAILED",Y)):null,G;if($.options.stringKeys&&$.atKey)G=$.schema[B0.SCALAR];else if(H)G=Cz($.schema,X,H,U,z);else if(Z.type==="scalar")G=jz($,X,Z,z);else G=$.schema[B0.SCALAR];let W;try{let Y=G.resolve(X,(B)=>z(U??Z,"TAG_RESOLVE_FAILED",B),$.options);W=B0.isScalar(Y)?Y:new D6.Scalar(Y)}catch(Y){let B=Y instanceof Error?Y.message:String(Y);z(U??Z,"TAG_RESOLVE_FAILED",B),W=new D6.Scalar(X)}if(W.range=q,W.source=X,Q)W.type=Q;if(H)W.tag=H;if(G.format)W.format=G.format;if(J)W.comment=J;return W}function Cz($,Z,U,z,X){if(U==="!")return $[B0.SCALAR];let Q=[];for(let q of $.tags)if(!q.collection&&q.tag===U)if(q.default&&q.test)Q.push(q);else return q;for(let q of Q)if(q.test?.test(Z))return q;let J=$.knownTags[U];if(J&&!J.collection)return $.tags.push(Object.assign({},J,{default:!1,test:void 0})),J;return X(z,"TAG_RESOLVE_FAILED",`Unresolved tag: ${U}`,U!=="tag:yaml.org,2002:str"),$[B0.SCALAR]}function jz({atKey:$,directives:Z,schema:U},z,X,Q){let J=U.tags.find((q)=>(q.default===!0||$&&q.default==="key")&&q.test?.test(z))||U[B0.SCALAR];if(U.compat){let q=U.compat.find((H)=>H.default&&H.test?.test(z))??U[B0.SCALAR];if(J.tag!==q.tag){let H=Z.tagString(J.tag),G=Z.tagString(q.tag),W=`Value may be parsed as either ${H} or ${G}`;Q(X,"TAG_RESOLVE_FAILED",W,!0)}}return J}Sz.composeScalar=bz});var O6=_((yz)=>{function gz($,Z,U){if(Z){U??(U=Z.length);for(let z=U-1;z>=0;--z){let X=Z[z];switch(X.type){case"space":case"comment":case"newline":$-=X.source.length;continue}X=Z[++z];while(X?.type==="space")$+=X.source.length,X=Z[++z];break}}return $}yz.emptyScalarPosition=gz});var R6=_((lz)=>{var xz=v0(),hz=C(),uz=V6(),_6=L6(),kz=w0(),vz=O6(),mz={composeNode:I6,composeEmptyNode:Y9};function I6($,Z,U,z){let X=$.atKey,{spaceBefore:Q,comment:J,anchor:q,tag:H}=U,G,W=!0;switch(Z.type){case"alias":if(G=pz($,Z,z),q||H)z(Z,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":if(G=_6.composeScalar($,Z,H,z),q)G.anchor=q.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":if(G=uz.composeCollection(mz,$,Z,U,z),q)G.anchor=q.source.substring(1);break;default:{let Y=Z.type==="error"?Z.message:`Unsupported token (type: ${Z.type})`;z(Z,"UNEXPECTED_TOKEN",Y),G=Y9($,Z.offset,void 0,null,U,z),W=!1}}if(q&&G.anchor==="")z(q,"BAD_ALIAS","Anchor cannot be an empty string");if(X&&$.options.stringKeys&&(!hz.isScalar(G)||typeof G.value!=="string"||G.tag&&G.tag!=="tag:yaml.org,2002:str"))z(H??Z,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(Q)G.spaceBefore=!0;if(J)if(Z.type==="scalar"&&Z.source==="")G.comment=J;else G.commentBefore=J;if($.options.keepSourceTokens&&W)G.srcToken=Z;return G}function Y9($,Z,U,z,{spaceBefore:X,comment:Q,anchor:J,tag:q,end:H},G){let W={type:"scalar",offset:vz.emptyScalarPosition(Z,U,z),indent:-1,source:""},Y=_6.composeScalar($,W,q,G);if(J){if(Y.anchor=J.source.substring(1),Y.anchor==="")G(J,"BAD_ALIAS","Anchor cannot be an empty string")}if(X)Y.spaceBefore=!0;if(Q)Y.comment=Q,Y.range[2]=H;return Y}function pz({options:$},{offset:Z,source:U,end:z},X){let Q=new xz.Alias(U.substring(1));if(Q.source==="")X(Z,"BAD_ALIAS","Alias cannot be an empty string");if(Q.source.endsWith(":"))X(Z+U.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let J=Z+U.length,q=kz.resolveEnd(z,J,$.strict,X);if(Q.range=[Z,J,q.offset],q.comment)Q.comment=q.comment;return Q}lz.composeEmptyNode=Y9;lz.composeNode=I6});var T6=_((nz)=>{var az=Z$(),M6=R6(),sz=w0(),iz=z$();function rz($,Z,{offset:U,start:z,value:X,end:Q},J){let q=Object.assign({_directives:Z},$),H=new az.Document(void 0,q),G={atKey:!1,atRoot:!0,directives:H.directives,options:H.options,schema:H.schema},W=iz.resolveProps(z,{indicator:"doc-start",next:X??Q?.[0],offset:U,onError:J,parentIndent:0,startOnNewline:!0});if(W.found){if(H.directives.docStart=!0,X&&(X.type==="block-map"||X.type==="block-seq")&&!W.hasNewline)J(W.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}H.contents=X?M6.composeNode(G,X,W,J):M6.composeEmptyNode(G,W.end,z,null,W,J);let Y=H.contents.range[2],B=sz.resolveEnd(Q,Y,!1,J);if(B.comment)H.comment=B.comment;return H.range=[U,Y,B.offset],H}nz.composeDoc=rz});var B9=_((zX)=>{var tz=g0("process"),ez=L2(),$X=Z$(),X$=U$(),P6=C(),ZX=T6(),UX=w0();function Q$($){if(typeof $==="number")return[$,$+1];if(Array.isArray($))return $.length===2?$:[$[0],$[1]];let{offset:Z,source:U}=$;return[Z,Z+(typeof U==="string"?U.length:1)]}function F6($){let Z="",U=!1,z=!1;for(let X=0;X<$.length;++X){let Q=$[X];switch(Q[0]){case"#":Z+=(Z===""?"":z?`
98
+ `;Z+=1,X=$[Z+1]}if(!U)U=" ";return{fold:U,offset:Z}}var EX={"0":"\x00",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
99
+ `,r:"\r",t:"\t",v:"\v",N:"…",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function gX($,Z,U,X){let z=$.substr(Z,U),J=z.length===U&&/^[0-9a-fA-F]+$/.test(z)?parseInt(z,16):NaN;if(isNaN(J)){let q=$.substr(Z-2,U+2);return X(Z-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${q}`),q}return String.fromCodePoint(J)}fX.resolveFlowScalar=wX});var R4=I((mX)=>{var B0=b(),I4=g(),xX=G2(),hX=B2();function uX($,Z,U,X){let{value:z,type:Q,comment:J,range:q}=Z.type==="block-scalar"?xX.resolveBlockScalar($,Z,X):hX.resolveFlowScalar(Z,$.options.strict,X),H=U?$.directives.tagName(U.source,(Y)=>X(U,"TAG_RESOLVE_FAILED",Y)):null,G;if($.options.stringKeys&&$.atKey)G=$.schema[B0.SCALAR];else if(H)G=kX($.schema,z,H,U,X);else if(Z.type==="scalar")G=vX($,z,Z,X);else G=$.schema[B0.SCALAR];let W;try{let Y=G.resolve(z,(B)=>X(U??Z,"TAG_RESOLVE_FAILED",B),$.options);W=B0.isScalar(Y)?Y:new I4.Scalar(Y)}catch(Y){let B=Y instanceof Error?Y.message:String(Y);X(U??Z,"TAG_RESOLVE_FAILED",B),W=new I4.Scalar(z)}if(W.range=q,W.source=z,Q)W.type=Q;if(H)W.tag=H;if(G.format)W.format=G.format;if(J)W.comment=J;return W}function kX($,Z,U,X,z){if(U==="!")return $[B0.SCALAR];let Q=[];for(let q of $.tags)if(!q.collection&&q.tag===U)if(q.default&&q.test)Q.push(q);else return q;for(let q of Q)if(q.test?.test(Z))return q;let J=$.knownTags[U];if(J&&!J.collection)return $.tags.push(Object.assign({},J,{default:!1,test:void 0})),J;return z(X,"TAG_RESOLVE_FAILED",`Unresolved tag: ${U}`,U!=="tag:yaml.org,2002:str"),$[B0.SCALAR]}function vX({atKey:$,directives:Z,schema:U},X,z,Q){let J=U.tags.find((q)=>(q.default===!0||$&&q.default==="key")&&q.test?.test(X))||U[B0.SCALAR];if(U.compat){let q=U.compat.find((H)=>H.default&&H.test?.test(X))??U[B0.SCALAR];if(J.tag!==q.tag){let H=Z.tagString(J.tag),G=Z.tagString(q.tag),W=`Value may be parsed as either ${H} or ${G}`;Q(z,"TAG_RESOLVE_FAILED",W,!0)}}return J}mX.composeScalar=uX});var M4=I((dX)=>{function lX($,Z,U){if(Z){U??(U=Z.length);for(let X=U-1;X>=0;--X){let z=Z[X];switch(z.type){case"space":case"comment":case"newline":$-=z.source.length;continue}z=Z[++X];while(z?.type==="space")$+=z.source.length,z=Z[++X];break}}return $}dX.emptyScalarPosition=lX});var T4=I((eX)=>{var aX=m0(),sX=b(),iX=_4(),P4=R4(),rX=w0(),nX=M4(),oX={composeNode:F4,composeEmptyNode:V2};function F4($,Z,U,X){let z=$.atKey,{spaceBefore:Q,comment:J,anchor:q,tag:H}=U,G,W=!0;switch(Z.type){case"alias":if(G=tX($,Z,X),q||H)X(Z,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":if(G=P4.composeScalar($,Z,H,X),q)G.anchor=q.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":if(G=iX.composeCollection(oX,$,Z,U,X),q)G.anchor=q.source.substring(1);break;default:{let Y=Z.type==="error"?Z.message:`Unsupported token (type: ${Z.type})`;X(Z,"UNEXPECTED_TOKEN",Y),G=V2($,Z.offset,void 0,null,U,X),W=!1}}if(q&&G.anchor==="")X(q,"BAD_ALIAS","Anchor cannot be an empty string");if(z&&$.options.stringKeys&&(!sX.isScalar(G)||typeof G.value!=="string"||G.tag&&G.tag!=="tag:yaml.org,2002:str"))X(H??Z,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(Q)G.spaceBefore=!0;if(J)if(Z.type==="scalar"&&Z.source==="")G.comment=J;else G.commentBefore=J;if($.options.keepSourceTokens&&W)G.srcToken=Z;return G}function V2($,Z,U,X,{spaceBefore:z,comment:Q,anchor:J,tag:q,end:H},G){let W={type:"scalar",offset:nX.emptyScalarPosition(Z,U,X),indent:-1,source:""},Y=P4.composeScalar($,W,q,G);if(J){if(Y.anchor=J.source.substring(1),Y.anchor==="")G(J,"BAD_ALIAS","Anchor cannot be an empty string")}if(z)Y.spaceBefore=!0;if(Q)Y.comment=Q,Y.range[2]=H;return Y}function tX({options:$},{offset:Z,source:U,end:X},z){let Q=new aX.Alias(U.substring(1));if(Q.source==="")z(Z,"BAD_ALIAS","Alias cannot be an empty string");if(Q.source.endsWith(":"))z(Z+U.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let J=Z+U.length,q=rX.resolveEnd(X,J,$.strict,z);if(Q.range=[Z,J,q.offset],q.comment)Q.comment=q.comment;return Q}eX.composeEmptyNode=V2;eX.composeNode=F4});var A4=I((Jz)=>{var Uz=U$(),K4=T4(),Xz=w0(),zz=z$();function Qz($,Z,{offset:U,start:X,value:z,end:Q},J){let q=Object.assign({_directives:Z},$),H=new Uz.Document(void 0,q),G={atKey:!1,atRoot:!0,directives:H.directives,options:H.options,schema:H.schema},W=zz.resolveProps(X,{indicator:"doc-start",next:z??Q?.[0],offset:U,onError:J,parentIndent:0,startOnNewline:!0});if(W.found){if(H.directives.docStart=!0,z&&(z.type==="block-map"||z.type==="block-seq")&&!W.hasNewline)J(W.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}H.contents=z?K4.composeNode(G,z,W,J):K4.composeEmptyNode(G,W.end,X,null,W,J);let Y=H.contents.range[2],B=Xz.resolveEnd(Q,Y,!1,J);if(B.comment)H.comment=B.comment;return H.range=[U,Y,B.offset],H}Jz.composeDoc=Qz});var W2=I((Wz)=>{var Hz=f0("process"),Gz=D9(),Yz=U$(),Q$=X$(),N4=b(),Bz=A4(),Vz=w0();function J$($){if(typeof $==="number")return[$,$+1];if(Array.isArray($))return $.length===2?$:[$[0],$[1]];let{offset:Z,source:U}=$;return[Z,Z+(typeof U==="string"?U.length:1)]}function w4($){let Z="",U=!1,X=!1;for(let z=0;z<$.length;++z){let Q=$[z];switch(Q[0]){case"#":Z+=(Z===""?"":X?`
100
100
 
101
101
  `:`
102
- `)+(Q.substring(1)||" "),U=!0,z=!1;break;case"%":if($[X+1]?.[0]!=="#")X+=1;U=!1;break;default:if(!U)z=!0;U=!1}}return{comment:Z,afterEmptyLine:z}}class K6{constructor($={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(Z,U,z,X)=>{let Q=Q$(Z);if(X)this.warnings.push(new X$.YAMLWarning(Q,U,z));else this.errors.push(new X$.YAMLParseError(Q,U,z))},this.directives=new ez.Directives({version:$.version||"1.2"}),this.options=$}decorate($,Z){let{comment:U,afterEmptyLine:z}=F6(this.prelude);if(U){let X=$.contents;if(Z)$.comment=$.comment?`${$.comment}
103
- ${U}`:U;else if(z||$.directives.docStart||!X)$.commentBefore=U;else if(P6.isCollection(X)&&!X.flow&&X.items.length>0){let Q=X.items[0];if(P6.isPair(Q))Q=Q.key;let J=Q.commentBefore;Q.commentBefore=J?`${U}
104
- ${J}`:U}else{let Q=X.commentBefore;X.commentBefore=Q?`${U}
105
- ${Q}`:U}}if(Z)Array.prototype.push.apply($.errors,this.errors),Array.prototype.push.apply($.warnings,this.warnings);else $.errors=this.errors,$.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:F6(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose($,Z=!1,U=-1){for(let z of $)yield*this.next(z);yield*this.end(Z,U)}*next($){if(tz.env.LOG_STREAM)console.dir($,{depth:null});switch($.type){case"directive":this.directives.add($.source,(Z,U,z)=>{let X=Q$($);X[0]+=Z,this.onError(X,"BAD_DIRECTIVE",U,z)}),this.prelude.push($.source),this.atDirectives=!0;break;case"document":{let Z=ZX.composeDoc(this.options,this.directives,$,this.onError);if(this.atDirectives&&!Z.directives.docStart)this.onError($,"MISSING_CHAR","Missing directives-end/doc-start indicator line");if(this.decorate(Z,!1),this.doc)yield this.doc;this.doc=Z,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push($.source);break;case"error":{let Z=$.source?`${$.message}: ${JSON.stringify($.source)}`:$.message,U=new X$.YAMLParseError(Q$($),"UNEXPECTED_TOKEN",Z);if(this.atDirectives||!this.doc)this.errors.push(U);else this.doc.errors.push(U);break}case"doc-end":{if(!this.doc){this.errors.push(new X$.YAMLParseError(Q$($),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let Z=UX.resolveEnd($.end,$.offset+$.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),Z.comment){let U=this.doc.comment;this.doc.comment=U?`${U}
106
- ${Z.comment}`:Z.comment}this.doc.range[2]=Z.offset;break}default:this.errors.push(new X$.YAMLParseError(Q$($),"UNEXPECTED_TOKEN",`Unsupported token ${$.type}`))}}*end($=!1,Z=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if($){let U=Object.assign({_directives:this.directives},this.options),z=new $X.Document(void 0,U);if(this.atDirectives)this.onError(Z,"MISSING_CHAR","Missing directives-end indicator line");z.range=[0,Z,Z],this.decorate(z,!1),yield z}}}zX.Composer=K6});var w6=_((VX)=>{var QX=q9(),JX=G9(),qX=U$(),A6=d0();function HX($,Z=!0,U){if($){let z=(X,Q,J)=>{let q=typeof X==="number"?X:Array.isArray(X)?X[0]:X.offset;if(U)U(q,Q,J);else throw new qX.YAMLParseError([q,q+1],Q,J)};switch($.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return JX.resolveFlowScalar($,Z,z);case"block-scalar":return QX.resolveBlockScalar({options:{strict:Z}},$,z)}}return null}function GX($,Z){let{implicitKey:U=!1,indent:z,inFlow:X=!1,offset:Q=-1,type:J="PLAIN"}=Z,q=A6.stringifyString({type:J,value:$},{implicitKey:U,indent:z>0?" ".repeat(z):"",inFlow:X,options:{blockQuote:!0,lineWidth:-1}}),H=Z.end??[{type:"newline",offset:-1,indent:z,source:`
102
+ `)+(Q.substring(1)||" "),U=!0,X=!1;break;case"%":if($[z+1]?.[0]!=="#")z+=1;U=!1;break;default:if(!U)X=!0;U=!1}}return{comment:Z,afterEmptyLine:X}}class b4{constructor($={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(Z,U,X,z)=>{let Q=J$(Z);if(z)this.warnings.push(new Q$.YAMLWarning(Q,U,X));else this.errors.push(new Q$.YAMLParseError(Q,U,X))},this.directives=new Gz.Directives({version:$.version||"1.2"}),this.options=$}decorate($,Z){let{comment:U,afterEmptyLine:X}=w4(this.prelude);if(U){let z=$.contents;if(Z)$.comment=$.comment?`${$.comment}
103
+ ${U}`:U;else if(X||$.directives.docStart||!z)$.commentBefore=U;else if(N4.isCollection(z)&&!z.flow&&z.items.length>0){let Q=z.items[0];if(N4.isPair(Q))Q=Q.key;let J=Q.commentBefore;Q.commentBefore=J?`${U}
104
+ ${J}`:U}else{let Q=z.commentBefore;z.commentBefore=Q?`${U}
105
+ ${Q}`:U}}if(Z)Array.prototype.push.apply($.errors,this.errors),Array.prototype.push.apply($.warnings,this.warnings);else $.errors=this.errors,$.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:w4(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose($,Z=!1,U=-1){for(let X of $)yield*this.next(X);yield*this.end(Z,U)}*next($){if(Hz.env.LOG_STREAM)console.dir($,{depth:null});switch($.type){case"directive":this.directives.add($.source,(Z,U,X)=>{let z=J$($);z[0]+=Z,this.onError(z,"BAD_DIRECTIVE",U,X)}),this.prelude.push($.source),this.atDirectives=!0;break;case"document":{let Z=Bz.composeDoc(this.options,this.directives,$,this.onError);if(this.atDirectives&&!Z.directives.docStart)this.onError($,"MISSING_CHAR","Missing directives-end/doc-start indicator line");if(this.decorate(Z,!1),this.doc)yield this.doc;this.doc=Z,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push($.source);break;case"error":{let Z=$.source?`${$.message}: ${JSON.stringify($.source)}`:$.message,U=new Q$.YAMLParseError(J$($),"UNEXPECTED_TOKEN",Z);if(this.atDirectives||!this.doc)this.errors.push(U);else this.doc.errors.push(U);break}case"doc-end":{if(!this.doc){this.errors.push(new Q$.YAMLParseError(J$($),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let Z=Vz.resolveEnd($.end,$.offset+$.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),Z.comment){let U=this.doc.comment;this.doc.comment=U?`${U}
106
+ ${Z.comment}`:Z.comment}this.doc.range[2]=Z.offset;break}default:this.errors.push(new Q$.YAMLParseError(J$($),"UNEXPECTED_TOKEN",`Unsupported token ${$.type}`))}}*end($=!1,Z=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if($){let U=Object.assign({_directives:this.directives},this.options),X=new Yz.Document(void 0,U);if(this.atDirectives)this.onError(Z,"MISSING_CHAR","Missing directives-end indicator line");X.range=[0,Z,Z],this.decorate(X,!1),yield X}}}Wz.Composer=b4});var S4=I((Fz)=>{var Oz=G2(),_z=B2(),Dz=X$(),C4=c0();function Iz($,Z=!0,U){if($){let X=(z,Q,J)=>{let q=typeof z==="number"?z:Array.isArray(z)?z[0]:z.offset;if(U)U(q,Q,J);else throw new Dz.YAMLParseError([q,q+1],Q,J)};switch($.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return _z.resolveFlowScalar($,Z,X);case"block-scalar":return Oz.resolveBlockScalar({options:{strict:Z}},$,X)}}return null}function Rz($,Z){let{implicitKey:U=!1,indent:X,inFlow:z=!1,offset:Q=-1,type:J="PLAIN"}=Z,q=C4.stringifyString({type:J,value:$},{implicitKey:U,indent:X>0?" ".repeat(X):"",inFlow:z,options:{blockQuote:!0,lineWidth:-1}}),H=Z.end??[{type:"newline",offset:-1,indent:X,source:`
107
107
  `}];switch(q[0]){case"|":case">":{let G=q.indexOf(`
108
108
  `),W=q.substring(0,G),Y=q.substring(G+1)+`
109
- `,B=[{type:"block-scalar-header",offset:Q,indent:z,source:W}];if(!N6(B,H))B.push({type:"newline",offset:-1,indent:z,source:`
110
- `});return{type:"block-scalar",offset:Q,indent:z,props:B,source:Y}}case'"':return{type:"double-quoted-scalar",offset:Q,indent:z,source:q,end:H};case"'":return{type:"single-quoted-scalar",offset:Q,indent:z,source:q,end:H};default:return{type:"scalar",offset:Q,indent:z,source:q,end:H}}}function YX($,Z,U={}){let{afterKey:z=!1,implicitKey:X=!1,inFlow:Q=!1,type:J}=U,q="indent"in $?$.indent:null;if(z&&typeof q==="number")q+=2;if(!J)switch($.type){case"single-quoted-scalar":J="QUOTE_SINGLE";break;case"double-quoted-scalar":J="QUOTE_DOUBLE";break;case"block-scalar":{let G=$.props[0];if(G.type!=="block-scalar-header")throw Error("Invalid block scalar header");J=G.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:J="PLAIN"}let H=A6.stringifyString({type:J,value:Z},{implicitKey:X||q===null,indent:q!==null&&q>0?" ".repeat(q):"",inFlow:Q,options:{blockQuote:!0,lineWidth:-1}});switch(H[0]){case"|":case">":BX($,H);break;case'"':V9($,H,"double-quoted-scalar");break;case"'":V9($,H,"single-quoted-scalar");break;default:V9($,H,"scalar")}}function BX($,Z){let U=Z.indexOf(`
111
- `),z=Z.substring(0,U),X=Z.substring(U+1)+`
112
- `;if($.type==="block-scalar"){let Q=$.props[0];if(Q.type!=="block-scalar-header")throw Error("Invalid block scalar header");Q.source=z,$.source=X}else{let{offset:Q}=$,J="indent"in $?$.indent:-1,q=[{type:"block-scalar-header",offset:Q,indent:J,source:z}];if(!N6(q,"end"in $?$.end:void 0))q.push({type:"newline",offset:-1,indent:J,source:`
113
- `});for(let H of Object.keys($))if(H!=="type"&&H!=="offset")delete $[H];Object.assign($,{type:"block-scalar",indent:J,props:q,source:X})}}function N6($,Z){if(Z)for(let U of Z)switch(U.type){case"space":case"comment":$.push(U);break;case"newline":return $.push(U),!0}return!1}function V9($,Z,U){switch($.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":$.type=U,$.source=Z;break;case"block-scalar":{let z=$.props.slice(1),X=Z.length;if($.props[0].type==="block-scalar-header")X-=$.props[0].source.length;for(let Q of z)Q.offset+=X;delete $.props,Object.assign($,{type:U,source:Z,end:z});break}case"block-map":case"block-seq":{let X={type:"newline",offset:$.offset+Z.length,indent:$.indent,source:`
114
- `};delete $.items,Object.assign($,{type:U,source:Z,end:[X]});break}default:{let z="indent"in $?$.indent:-1,X="end"in $&&Array.isArray($.end)?$.end.filter((Q)=>Q.type==="space"||Q.type==="comment"||Q.type==="newline"):[];for(let Q of Object.keys($))if(Q!=="type"&&Q!=="offset")delete $[Q];Object.assign($,{type:U,indent:z,source:Z,end:X})}}}VX.createScalarToken=GX;VX.resolveAsScalar=HX;VX.setScalarValue=YX});var b6=_((_X)=>{var OX=($)=>("type"in $)?o$($):n$($);function o$($){switch($.type){case"block-scalar":{let Z="";for(let U of $.props)Z+=o$(U);return Z+$.source}case"block-map":case"block-seq":{let Z="";for(let U of $.items)Z+=n$(U);return Z}case"flow-collection":{let Z=$.start.source;for(let U of $.items)Z+=n$(U);for(let U of $.end)Z+=U.source;return Z}case"document":{let Z=n$($);if($.end)for(let U of $.end)Z+=U.source;return Z}default:{let Z=$.source;if("end"in $&&$.end)for(let U of $.end)Z+=U.source;return Z}}}function n$({start:$,key:Z,sep:U,value:z}){let X="";for(let Q of $)X+=Q.source;if(Z)X+=o$(Z);if(U)for(let Q of U)X+=Q.source;if(z)X+=o$(z);return X}_X.stringify=OX});var S6=_((MX)=>{var W9=Symbol("break visit"),RX=Symbol("skip children"),C6=Symbol("remove item");function V0($,Z){if("type"in $&&$.type==="document")$={start:$.start,value:$.value};j6(Object.freeze([]),$,Z)}V0.BREAK=W9;V0.SKIP=RX;V0.REMOVE=C6;V0.itemAtPath=($,Z)=>{let U=$;for(let[z,X]of Z){let Q=U?.[z];if(Q&&"items"in Q)U=Q.items[X];else return}return U};V0.parentCollection=($,Z)=>{let U=V0.itemAtPath($,Z.slice(0,-1)),z=Z[Z.length-1][0],X=U?.[z];if(X&&"items"in X)return X;throw Error("Parent collection not found")};function j6($,Z,U){let z=U(Z,$);if(typeof z==="symbol")return z;for(let X of["key","value"]){let Q=Z[X];if(Q&&"items"in Q){for(let J=0;J<Q.items.length;++J){let q=j6(Object.freeze($.concat([[X,J]])),Q.items[J],U);if(typeof q==="number")J=q-1;else if(q===W9)return W9;else if(q===C6)Q.items.splice(J,1),J-=1}if(typeof z==="function"&&X==="key")z=z(Z,$)}}return typeof z==="function"?z(Z,$):z}MX.visit=V0});var t$=_((bX)=>{var D9=w6(),PX=b6(),FX=S6(),L9="\uFEFF",O9="\x02",_9="\x18",I9="\x1F",KX=($)=>!!$&&("items"in $),AX=($)=>!!$&&($.type==="scalar"||$.type==="single-quoted-scalar"||$.type==="double-quoted-scalar"||$.type==="block-scalar");function NX($){switch($){case L9:return"<BOM>";case O9:return"<DOC>";case _9:return"<FLOW_END>";case I9:return"<SCALAR>";default:return JSON.stringify($)}}function wX($){switch($){case L9:return"byte-order-mark";case O9:return"doc-mode";case _9:return"flow-error-end";case I9:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
109
+ `,B=[{type:"block-scalar-header",offset:Q,indent:X,source:W}];if(!j4(B,H))B.push({type:"newline",offset:-1,indent:X,source:`
110
+ `});return{type:"block-scalar",offset:Q,indent:X,props:B,source:Y}}case'"':return{type:"double-quoted-scalar",offset:Q,indent:X,source:q,end:H};case"'":return{type:"single-quoted-scalar",offset:Q,indent:X,source:q,end:H};default:return{type:"scalar",offset:Q,indent:X,source:q,end:H}}}function Mz($,Z,U={}){let{afterKey:X=!1,implicitKey:z=!1,inFlow:Q=!1,type:J}=U,q="indent"in $?$.indent:null;if(X&&typeof q==="number")q+=2;if(!J)switch($.type){case"single-quoted-scalar":J="QUOTE_SINGLE";break;case"double-quoted-scalar":J="QUOTE_DOUBLE";break;case"block-scalar":{let G=$.props[0];if(G.type!=="block-scalar-header")throw Error("Invalid block scalar header");J=G.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:J="PLAIN"}let H=C4.stringifyString({type:J,value:Z},{implicitKey:z||q===null,indent:q!==null&&q>0?" ".repeat(q):"",inFlow:Q,options:{blockQuote:!0,lineWidth:-1}});switch(H[0]){case"|":case">":Pz($,H);break;case'"':L2($,H,"double-quoted-scalar");break;case"'":L2($,H,"single-quoted-scalar");break;default:L2($,H,"scalar")}}function Pz($,Z){let U=Z.indexOf(`
111
+ `),X=Z.substring(0,U),z=Z.substring(U+1)+`
112
+ `;if($.type==="block-scalar"){let Q=$.props[0];if(Q.type!=="block-scalar-header")throw Error("Invalid block scalar header");Q.source=X,$.source=z}else{let{offset:Q}=$,J="indent"in $?$.indent:-1,q=[{type:"block-scalar-header",offset:Q,indent:J,source:X}];if(!j4(q,"end"in $?$.end:void 0))q.push({type:"newline",offset:-1,indent:J,source:`
113
+ `});for(let H of Object.keys($))if(H!=="type"&&H!=="offset")delete $[H];Object.assign($,{type:"block-scalar",indent:J,props:q,source:z})}}function j4($,Z){if(Z)for(let U of Z)switch(U.type){case"space":case"comment":$.push(U);break;case"newline":return $.push(U),!0}return!1}function L2($,Z,U){switch($.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":$.type=U,$.source=Z;break;case"block-scalar":{let X=$.props.slice(1),z=Z.length;if($.props[0].type==="block-scalar-header")z-=$.props[0].source.length;for(let Q of X)Q.offset+=z;delete $.props,Object.assign($,{type:U,source:Z,end:X});break}case"block-map":case"block-seq":{let z={type:"newline",offset:$.offset+Z.length,indent:$.indent,source:`
114
+ `};delete $.items,Object.assign($,{type:U,source:Z,end:[z]});break}default:{let X="indent"in $?$.indent:-1,z="end"in $&&Array.isArray($.end)?$.end.filter((Q)=>Q.type==="space"||Q.type==="comment"||Q.type==="newline"):[];for(let Q of Object.keys($))if(Q!=="type"&&Q!=="offset")delete $[Q];Object.assign($,{type:U,indent:X,source:Z,end:z})}}}Fz.createScalarToken=Rz;Fz.resolveAsScalar=Iz;Fz.setScalarValue=Mz});var E4=I((wz)=>{var Nz=($)=>("type"in $)?t$($):o$($);function t$($){switch($.type){case"block-scalar":{let Z="";for(let U of $.props)Z+=t$(U);return Z+$.source}case"block-map":case"block-seq":{let Z="";for(let U of $.items)Z+=o$(U);return Z}case"flow-collection":{let Z=$.start.source;for(let U of $.items)Z+=o$(U);for(let U of $.end)Z+=U.source;return Z}case"document":{let Z=o$($);if($.end)for(let U of $.end)Z+=U.source;return Z}default:{let Z=$.source;if("end"in $&&$.end)for(let U of $.end)Z+=U.source;return Z}}}function o$({start:$,key:Z,sep:U,value:X}){let z="";for(let Q of $)z+=Q.source;if(Z)z+=t$(Z);if(U)for(let Q of U)z+=Q.source;if(X)z+=t$(X);return z}wz.stringify=Nz});var y4=I((jz)=>{var O2=Symbol("break visit"),Cz=Symbol("skip children"),g4=Symbol("remove item");function V0($,Z){if("type"in $&&$.type==="document")$={start:$.start,value:$.value};f4(Object.freeze([]),$,Z)}V0.BREAK=O2;V0.SKIP=Cz;V0.REMOVE=g4;V0.itemAtPath=($,Z)=>{let U=$;for(let[X,z]of Z){let Q=U?.[X];if(Q&&"items"in Q)U=Q.items[z];else return}return U};V0.parentCollection=($,Z)=>{let U=V0.itemAtPath($,Z.slice(0,-1)),X=Z[Z.length-1][0],z=U?.[X];if(z&&"items"in z)return z;throw Error("Parent collection not found")};function f4($,Z,U){let X=U(Z,$);if(typeof X==="symbol")return X;for(let z of["key","value"]){let Q=Z[z];if(Q&&"items"in Q){for(let J=0;J<Q.items.length;++J){let q=f4(Object.freeze($.concat([[z,J]])),Q.items[J],U);if(typeof q==="number")J=q-1;else if(q===O2)return O2;else if(q===g4)Q.items.splice(J,1),J-=1}if(typeof X==="function"&&z==="key")X=X(Z,$)}}return typeof X==="function"?X(Z,$):X}jz.visit=V0});var e$=I((uz)=>{var _2=S4(),Ez=E4(),gz=y4(),D2="\uFEFF",I2="\x02",R2="\x18",M2="\x1F",fz=($)=>!!$&&("items"in $),yz=($)=>!!$&&($.type==="scalar"||$.type==="single-quoted-scalar"||$.type==="double-quoted-scalar"||$.type==="block-scalar");function xz($){switch($){case D2:return"<BOM>";case I2:return"<DOC>";case R2:return"<FLOW_END>";case M2:return"<SCALAR>";default:return JSON.stringify($)}}function hz($){switch($){case D2:return"byte-order-mark";case I2:return"doc-mode";case R2:return"flow-error-end";case M2:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
115
115
  `:case`\r
116
- `:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch($[0]){case" ":case"\t":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}bX.createScalarToken=D9.createScalarToken;bX.resolveAsScalar=D9.resolveAsScalar;bX.setScalarValue=D9.setScalarValue;bX.stringify=PX.stringify;bX.visit=FX.visit;bX.BOM=L9;bX.DOCUMENT=O9;bX.FLOW_END=_9;bX.SCALAR=I9;bX.isCollection=KX;bX.isScalar=AX;bX.prettyToken=NX;bX.tokenType=wX});var M9=_((dX)=>{var J$=t$();function v($){switch($){case void 0:case" ":case`
117
- `:case"\r":case"\t":return!0;default:return!1}}var E6=new Set("0123456789ABCDEFabcdef"),pX=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),e$=new Set(",[]{}"),lX=new Set(` ,[]{}
118
- \r `),R9=($)=>!$||lX.has($);class g6{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex($,Z=!1){if($){if(typeof $!=="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+$:$,this.lineEndPos=null}this.atEnd=!Z;let U=this.next??"stream";while(U&&(Z||this.hasChars(1)))U=yield*this.parseNext(U)}atLineEnd(){let $=this.pos,Z=this.buffer[$];while(Z===" "||Z==="\t")Z=this.buffer[++$];if(!Z||Z==="#"||Z===`
116
+ `:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch($[0]){case" ":case"\t":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}uz.createScalarToken=_2.createScalarToken;uz.resolveAsScalar=_2.resolveAsScalar;uz.setScalarValue=_2.setScalarValue;uz.stringify=Ez.stringify;uz.visit=gz.visit;uz.BOM=D2;uz.DOCUMENT=I2;uz.FLOW_END=R2;uz.SCALAR=M2;uz.isCollection=fz;uz.isScalar=yz;uz.prettyToken=xz;uz.tokenType=hz});var F2=I(($Q)=>{var q$=e$();function v($){switch($){case void 0:case" ":case`
117
+ `:case"\r":case"\t":return!0;default:return!1}}var x4=new Set("0123456789ABCDEFabcdef"),tz=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),$9=new Set(",[]{}"),ez=new Set(` ,[]{}
118
+ \r `),P2=($)=>!$||ez.has($);class h4{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex($,Z=!1){if($){if(typeof $!=="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+$:$,this.lineEndPos=null}this.atEnd=!Z;let U=this.next??"stream";while(U&&(Z||this.hasChars(1)))U=yield*this.parseNext(U)}atLineEnd(){let $=this.pos,Z=this.buffer[$];while(Z===" "||Z==="\t")Z=this.buffer[++$];if(!Z||Z==="#"||Z===`
119
119
  `)return!0;if(Z==="\r")return this.buffer[$+1]===`
120
- `;return!1}charAt($){return this.buffer[this.pos+$]}continueScalar($){let Z=this.buffer[$];if(this.indentNext>0){let U=0;while(Z===" ")Z=this.buffer[++U+$];if(Z==="\r"){let z=this.buffer[U+$+1];if(z===`
121
- `||!z&&!this.atEnd)return $+U+1}return Z===`
120
+ `;return!1}charAt($){return this.buffer[this.pos+$]}continueScalar($){let Z=this.buffer[$];if(this.indentNext>0){let U=0;while(Z===" ")Z=this.buffer[++U+$];if(Z==="\r"){let X=this.buffer[U+$+1];if(X===`
121
+ `||!X&&!this.atEnd)return $+U+1}return Z===`
122
122
  `||U>=this.indentNext||!Z&&!this.atEnd?$+U:-1}if(Z==="-"||Z==="."){let U=this.buffer.substr($,3);if((U==="---"||U==="...")&&v(this.buffer[$+3]))return-1}return $}getLine(){let $=this.lineEndPos;if(typeof $!=="number"||$!==-1&&$<this.pos)$=this.buffer.indexOf(`
123
- `,this.pos),this.lineEndPos=$;if($===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[$-1]==="\r")$-=1;return this.buffer.substring(this.pos,$)}hasChars($){return this.pos+$<=this.buffer.length}setNext($){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=$,null}peek($){return this.buffer.substr(this.pos,$)}*parseNext($){switch($){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let $=this.getLine();if($===null)return this.setNext("stream");if($[0]===J$.BOM)yield*this.pushCount(1),$=$.substring(1);if($[0]==="%"){let Z=$.length,U=$.indexOf("#");while(U!==-1){let X=$[U-1];if(X===" "||X==="\t"){Z=U-1;break}else U=$.indexOf("#",U+1)}while(!0){let X=$[Z-1];if(X===" "||X==="\t")Z-=1;else break}let z=(yield*this.pushCount(Z))+(yield*this.pushSpaces(!0));return yield*this.pushCount($.length-z),this.pushNewline(),"stream"}if(this.atLineEnd()){let Z=yield*this.pushSpaces(!0);return yield*this.pushCount($.length-Z),yield*this.pushNewline(),"stream"}return yield J$.DOCUMENT,yield*this.parseLineStart()}*parseLineStart(){let $=this.charAt(0);if(!$&&!this.atEnd)return this.setNext("line-start");if($==="-"||$==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");let Z=this.peek(3);if((Z==="---"||Z==="...")&&v(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,Z==="---"?"doc":"stream"}if(this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!v(this.charAt(1)))this.indentNext=this.indentValue;return yield*this.parseBlockStart()}*parseBlockStart(){let[$,Z]=this.peek(2);if(!Z&&!this.atEnd)return this.setNext("block-start");if(($==="-"||$==="?"||$===":")&&v(Z)){let U=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=U,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let $=this.getLine();if($===null)return this.setNext("doc");let Z=yield*this.pushIndicators();switch($[Z]){case"#":yield*this.pushCount($.length-Z);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(R9),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return Z+=yield*this.parseBlockScalarHeader(),Z+=yield*this.pushSpaces(!0),yield*this.pushCount($.length-Z),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let $,Z,U=-1;do{if($=yield*this.pushNewline(),$>0)Z=yield*this.pushSpaces(!1),this.indentValue=U=Z;else Z=0;Z+=yield*this.pushSpaces(!0)}while($+Z>0);let z=this.getLine();if(z===null)return this.setNext("flow");if(U!==-1&&U<this.indentNext&&z[0]!=="#"||U===0&&(z.startsWith("---")||z.startsWith("..."))&&v(z[3])){if(!(U===this.indentNext-1&&this.flowLevel===1&&(z[0]==="]"||z[0]==="}")))return this.flowLevel=0,yield J$.FLOW_END,yield*this.parseLineStart()}let X=0;while(z[X]===",")X+=yield*this.pushCount(1),X+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(X+=yield*this.pushIndicators(),z[X]){case void 0:return"flow";case"#":return yield*this.pushCount(z.length-X),"flow";case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*this.pushUntil(R9),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let Q=this.charAt(1);if(this.flowKey||v(Q)||Q===",")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let $=this.charAt(0),Z=this.buffer.indexOf($,this.pos+1);if($==="'")while(Z!==-1&&this.buffer[Z+1]==="'")Z=this.buffer.indexOf("'",Z+2);else while(Z!==-1){let X=0;while(this.buffer[Z-1-X]==="\\")X+=1;if(X%2===0)break;Z=this.buffer.indexOf('"',Z+1)}let U=this.buffer.substring(0,Z),z=U.indexOf(`
124
- `,this.pos);if(z!==-1){while(z!==-1){let X=this.continueScalar(z+1);if(X===-1)break;z=U.indexOf(`
125
- `,X)}if(z!==-1)Z=z-(U[z-1]==="\r"?2:1)}if(Z===-1){if(!this.atEnd)return this.setNext("quoted-scalar");Z=this.buffer.length}return yield*this.pushToIndex(Z+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let $=this.pos;while(!0){let Z=this.buffer[++$];if(Z==="+")this.blockScalarKeep=!0;else if(Z>"0"&&Z<="9")this.blockScalarIndent=Number(Z)-1;else if(Z!=="-")break}return yield*this.pushUntil((Z)=>v(Z)||Z==="#")}*parseBlockScalar(){let $=this.pos-1,Z=0,U;$:for(let X=this.pos;U=this.buffer[X];++X)switch(U){case" ":Z+=1;break;case`
126
- `:$=X,Z=0;break;case"\r":{let Q=this.buffer[X+1];if(!Q&&!this.atEnd)return this.setNext("block-scalar");if(Q===`
127
- `)break}default:break $}if(!U&&!this.atEnd)return this.setNext("block-scalar");if(Z>=this.indentNext){if(this.blockScalarIndent===-1)this.indentNext=Z;else this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let X=this.continueScalar($+1);if(X===-1)break;$=this.buffer.indexOf(`
128
- `,X)}while($!==-1);if($===-1){if(!this.atEnd)return this.setNext("block-scalar");$=this.buffer.length}}let z=$+1;U=this.buffer[z];while(U===" ")U=this.buffer[++z];if(U==="\t"){while(U==="\t"||U===" "||U==="\r"||U===`
129
- `)U=this.buffer[++z];$=z-1}else if(!this.blockScalarKeep)do{let X=$-1,Q=this.buffer[X];if(Q==="\r")Q=this.buffer[--X];let J=X;while(Q===" ")Q=this.buffer[--X];if(Q===`
130
- `&&X>=this.pos&&X+1+Z>J)$=X;else break}while(!0);return yield J$.SCALAR,yield*this.pushToIndex($+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let $=this.flowLevel>0,Z=this.pos-1,U=this.pos-1,z;while(z=this.buffer[++U])if(z===":"){let X=this.buffer[U+1];if(v(X)||$&&e$.has(X))break;Z=U}else if(v(z)){let X=this.buffer[U+1];if(z==="\r")if(X===`
131
- `)U+=1,z=`
132
- `,X=this.buffer[U+1];else Z=U;if(X==="#"||$&&e$.has(X))break;if(z===`
133
- `){let Q=this.continueScalar(U+1);if(Q===-1)break;U=Math.max(U,Q-2)}}else{if($&&e$.has(z))break;Z=U}if(!z&&!this.atEnd)return this.setNext("plain-scalar");return yield J$.SCALAR,yield*this.pushToIndex(Z+1,!0),$?"flow":"doc"}*pushCount($){if($>0)return yield this.buffer.substr(this.pos,$),this.pos+=$,$;return 0}*pushToIndex($,Z){let U=this.buffer.slice(this.pos,$);if(U)return yield U,this.pos+=U.length,U.length;else if(Z)yield"";return 0}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(R9))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let $=this.flowLevel>0,Z=this.charAt(1);if(v(Z)||$&&e$.has(Z)){if(!$)this.indentNext=this.indentValue+1;else if(this.flowKey)this.flowKey=!1;return(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}}return 0}*pushTag(){if(this.charAt(1)==="<"){let $=this.pos+2,Z=this.buffer[$];while(!v(Z)&&Z!==">")Z=this.buffer[++$];return yield*this.pushToIndex(Z===">"?$+1:$,!1)}else{let $=this.pos+1,Z=this.buffer[$];while(Z)if(pX.has(Z))Z=this.buffer[++$];else if(Z==="%"&&E6.has(this.buffer[$+1])&&E6.has(this.buffer[$+2]))Z=this.buffer[$+=3];else break;return yield*this.pushToIndex($,!1)}}*pushNewline(){let $=this.buffer[this.pos];if($===`
123
+ `,this.pos),this.lineEndPos=$;if($===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[$-1]==="\r")$-=1;return this.buffer.substring(this.pos,$)}hasChars($){return this.pos+$<=this.buffer.length}setNext($){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=$,null}peek($){return this.buffer.substr(this.pos,$)}*parseNext($){switch($){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let $=this.getLine();if($===null)return this.setNext("stream");if($[0]===q$.BOM)yield*this.pushCount(1),$=$.substring(1);if($[0]==="%"){let Z=$.length,U=$.indexOf("#");while(U!==-1){let z=$[U-1];if(z===" "||z==="\t"){Z=U-1;break}else U=$.indexOf("#",U+1)}while(!0){let z=$[Z-1];if(z===" "||z==="\t")Z-=1;else break}let X=(yield*this.pushCount(Z))+(yield*this.pushSpaces(!0));return yield*this.pushCount($.length-X),this.pushNewline(),"stream"}if(this.atLineEnd()){let Z=yield*this.pushSpaces(!0);return yield*this.pushCount($.length-Z),yield*this.pushNewline(),"stream"}return yield q$.DOCUMENT,yield*this.parseLineStart()}*parseLineStart(){let $=this.charAt(0);if(!$&&!this.atEnd)return this.setNext("line-start");if($==="-"||$==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");let Z=this.peek(3);if((Z==="---"||Z==="...")&&v(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,Z==="---"?"doc":"stream"}if(this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!v(this.charAt(1)))this.indentNext=this.indentValue;return yield*this.parseBlockStart()}*parseBlockStart(){let[$,Z]=this.peek(2);if(!Z&&!this.atEnd)return this.setNext("block-start");if(($==="-"||$==="?"||$===":")&&v(Z)){let U=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=U,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let $=this.getLine();if($===null)return this.setNext("doc");let Z=yield*this.pushIndicators();switch($[Z]){case"#":yield*this.pushCount($.length-Z);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(P2),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return Z+=yield*this.parseBlockScalarHeader(),Z+=yield*this.pushSpaces(!0),yield*this.pushCount($.length-Z),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let $,Z,U=-1;do{if($=yield*this.pushNewline(),$>0)Z=yield*this.pushSpaces(!1),this.indentValue=U=Z;else Z=0;Z+=yield*this.pushSpaces(!0)}while($+Z>0);let X=this.getLine();if(X===null)return this.setNext("flow");if(U!==-1&&U<this.indentNext&&X[0]!=="#"||U===0&&(X.startsWith("---")||X.startsWith("..."))&&v(X[3])){if(!(U===this.indentNext-1&&this.flowLevel===1&&(X[0]==="]"||X[0]==="}")))return this.flowLevel=0,yield q$.FLOW_END,yield*this.parseLineStart()}let z=0;while(X[z]===",")z+=yield*this.pushCount(1),z+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(z+=yield*this.pushIndicators(),X[z]){case void 0:return"flow";case"#":return yield*this.pushCount(X.length-z),"flow";case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*this.pushUntil(P2),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let Q=this.charAt(1);if(this.flowKey||v(Q)||Q===",")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let $=this.charAt(0),Z=this.buffer.indexOf($,this.pos+1);if($==="'")while(Z!==-1&&this.buffer[Z+1]==="'")Z=this.buffer.indexOf("'",Z+2);else while(Z!==-1){let z=0;while(this.buffer[Z-1-z]==="\\")z+=1;if(z%2===0)break;Z=this.buffer.indexOf('"',Z+1)}let U=this.buffer.substring(0,Z),X=U.indexOf(`
124
+ `,this.pos);if(X!==-1){while(X!==-1){let z=this.continueScalar(X+1);if(z===-1)break;X=U.indexOf(`
125
+ `,z)}if(X!==-1)Z=X-(U[X-1]==="\r"?2:1)}if(Z===-1){if(!this.atEnd)return this.setNext("quoted-scalar");Z=this.buffer.length}return yield*this.pushToIndex(Z+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let $=this.pos;while(!0){let Z=this.buffer[++$];if(Z==="+")this.blockScalarKeep=!0;else if(Z>"0"&&Z<="9")this.blockScalarIndent=Number(Z)-1;else if(Z!=="-")break}return yield*this.pushUntil((Z)=>v(Z)||Z==="#")}*parseBlockScalar(){let $=this.pos-1,Z=0,U;$:for(let z=this.pos;U=this.buffer[z];++z)switch(U){case" ":Z+=1;break;case`
126
+ `:$=z,Z=0;break;case"\r":{let Q=this.buffer[z+1];if(!Q&&!this.atEnd)return this.setNext("block-scalar");if(Q===`
127
+ `)break}default:break $}if(!U&&!this.atEnd)return this.setNext("block-scalar");if(Z>=this.indentNext){if(this.blockScalarIndent===-1)this.indentNext=Z;else this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let z=this.continueScalar($+1);if(z===-1)break;$=this.buffer.indexOf(`
128
+ `,z)}while($!==-1);if($===-1){if(!this.atEnd)return this.setNext("block-scalar");$=this.buffer.length}}let X=$+1;U=this.buffer[X];while(U===" ")U=this.buffer[++X];if(U==="\t"){while(U==="\t"||U===" "||U==="\r"||U===`
129
+ `)U=this.buffer[++X];$=X-1}else if(!this.blockScalarKeep)do{let z=$-1,Q=this.buffer[z];if(Q==="\r")Q=this.buffer[--z];let J=z;while(Q===" ")Q=this.buffer[--z];if(Q===`
130
+ `&&z>=this.pos&&z+1+Z>J)$=z;else break}while(!0);return yield q$.SCALAR,yield*this.pushToIndex($+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let $=this.flowLevel>0,Z=this.pos-1,U=this.pos-1,X;while(X=this.buffer[++U])if(X===":"){let z=this.buffer[U+1];if(v(z)||$&&$9.has(z))break;Z=U}else if(v(X)){let z=this.buffer[U+1];if(X==="\r")if(z===`
131
+ `)U+=1,X=`
132
+ `,z=this.buffer[U+1];else Z=U;if(z==="#"||$&&$9.has(z))break;if(X===`
133
+ `){let Q=this.continueScalar(U+1);if(Q===-1)break;U=Math.max(U,Q-2)}}else{if($&&$9.has(X))break;Z=U}if(!X&&!this.atEnd)return this.setNext("plain-scalar");return yield q$.SCALAR,yield*this.pushToIndex(Z+1,!0),$?"flow":"doc"}*pushCount($){if($>0)return yield this.buffer.substr(this.pos,$),this.pos+=$,$;return 0}*pushToIndex($,Z){let U=this.buffer.slice(this.pos,$);if(U)return yield U,this.pos+=U.length,U.length;else if(Z)yield"";return 0}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(P2))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let $=this.flowLevel>0,Z=this.charAt(1);if(v(Z)||$&&$9.has(Z)){if(!$)this.indentNext=this.indentValue+1;else if(this.flowKey)this.flowKey=!1;return(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}}return 0}*pushTag(){if(this.charAt(1)==="<"){let $=this.pos+2,Z=this.buffer[$];while(!v(Z)&&Z!==">")Z=this.buffer[++$];return yield*this.pushToIndex(Z===">"?$+1:$,!1)}else{let $=this.pos+1,Z=this.buffer[$];while(Z)if(tz.has(Z))Z=this.buffer[++$];else if(Z==="%"&&x4.has(this.buffer[$+1])&&x4.has(this.buffer[$+2]))Z=this.buffer[$+=3];else break;return yield*this.pushToIndex($,!1)}}*pushNewline(){let $=this.buffer[this.pos];if($===`
134
134
  `)return yield*this.pushCount(1);else if($==="\r"&&this.charAt(1)===`
135
- `)return yield*this.pushCount(2);else return 0}*pushSpaces($){let Z=this.pos-1,U;do U=this.buffer[++Z];while(U===" "||$&&U==="\t");let z=Z-this.pos;if(z>0)yield this.buffer.substr(this.pos,z),this.pos=Z;return z}*pushUntil($){let Z=this.pos,U=this.buffer[Z];while(!$(U))U=this.buffer[++Z];return yield*this.pushToIndex(Z,!1)}}dX.Lexer=g6});var T9=_((aX)=>{class y6{constructor(){this.lineStarts=[],this.addNewLine=($)=>this.lineStarts.push($),this.linePos=($)=>{let Z=0,U=this.lineStarts.length;while(Z<U){let X=Z+U>>1;if(this.lineStarts[X]<$)Z=X+1;else U=X}if(this.lineStarts[Z]===$)return{line:Z+1,col:1};if(Z===0)return{line:0,col:$};let z=this.lineStarts[Z-1];return{line:Z,col:$-z+1}}}}aX.LineCounter=y6});var P9=_((nX)=>{var iX=g0("process"),f6=t$(),rX=M9();function X0($,Z){for(let U=0;U<$.length;++U)if($[U].type===Z)return!0;return!1}function x6($){for(let Z=0;Z<$.length;++Z)switch($[Z].type){case"space":case"comment":case"newline":break;default:return Z}return-1}function u6($){switch($?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function $2($){switch($.type){case"document":return $.start;case"block-map":{let Z=$.items[$.items.length-1];return Z.sep??Z.start}case"block-seq":return $.items[$.items.length-1].start;default:return[]}}function b0($){if($.length===0)return[];let Z=$.length;$:while(--Z>=0)switch($[Z].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break $}while($[++Z]?.type==="space");return $.splice(Z,$.length)}function h6($){if($.start.type==="flow-seq-start"){for(let Z of $.items)if(Z.sep&&!Z.value&&!X0(Z.start,"explicit-key-ind")&&!X0(Z.sep,"map-value-ind")){if(Z.key)Z.value=Z.key;if(delete Z.key,u6(Z.value))if(Z.value.end)Array.prototype.push.apply(Z.value.end,Z.sep);else Z.value.end=Z.sep;else Array.prototype.push.apply(Z.start,Z.sep);delete Z.sep}}}class k6{constructor($){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new rX.Lexer,this.onNewLine=$}*parse($,Z=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let U of this.lexer.lex($,Z))yield*this.next(U);if(!Z)yield*this.end()}*next($){if(this.source=$,iX.env.LOG_TOKENS)console.log("|",f6.prettyToken($));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=$.length;return}let Z=f6.tokenType($);if(!Z){let U=`Not a YAML token: ${$}`;yield*this.pop({type:"error",offset:this.offset,message:U,source:$}),this.offset+=$.length}else if(Z==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=Z,yield*this.step(),Z){case"newline":if(this.atNewLine=!0,this.indent=0,this.onNewLine)this.onNewLine(this.offset+$.length);break;case"space":if(this.atNewLine&&$[0]===" ")this.indent+=$.length;break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":if(this.atNewLine)this.indent+=$.length;break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=$.length}}*end(){while(this.stack.length>0)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let $=this.peek(1);if(this.type==="doc-end"&&$?.type!=="doc-end"){while(this.stack.length>0)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!$)return yield*this.stream();switch($.type){case"document":return yield*this.document($);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar($);case"block-scalar":return yield*this.blockScalar($);case"block-map":return yield*this.blockMap($);case"block-seq":return yield*this.blockSequence($);case"flow-collection":return yield*this.flowCollection($);case"doc-end":return yield*this.documentEnd($)}yield*this.pop()}peek($){return this.stack[this.stack.length-$]}*pop($){let Z=$??this.stack.pop();if(!Z)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield Z;else{let U=this.peek(1);if(Z.type==="block-scalar")Z.indent="indent"in U?U.indent:0;else if(Z.type==="flow-collection"&&U.type==="document")Z.indent=0;if(Z.type==="flow-collection")h6(Z);switch(U.type){case"document":U.value=Z;break;case"block-scalar":U.props.push(Z);break;case"block-map":{let z=U.items[U.items.length-1];if(z.value){U.items.push({start:[],key:Z,sep:[]}),this.onKeyLine=!0;return}else if(z.sep)z.value=Z;else{Object.assign(z,{key:Z,sep:[]}),this.onKeyLine=!z.explicitKey;return}break}case"block-seq":{let z=U.items[U.items.length-1];if(z.value)U.items.push({start:[],value:Z});else z.value=Z;break}case"flow-collection":{let z=U.items[U.items.length-1];if(!z||z.value)U.items.push({start:[],key:Z,sep:[]});else if(z.sep)z.value=Z;else Object.assign(z,{key:Z,sep:[]});return}default:yield*this.pop(),yield*this.pop(Z)}if((U.type==="document"||U.type==="block-map"||U.type==="block-seq")&&(Z.type==="block-map"||Z.type==="block-seq")){let z=Z.items[Z.items.length-1];if(z&&!z.sep&&!z.value&&z.start.length>0&&x6(z.start)===-1&&(Z.indent===0||z.start.every((X)=>X.type!=="comment"||X.indent<Z.indent))){if(U.type==="document")U.end=z.start;else U.items.push({start:z.start});Z.items.splice(-1,1)}}}}*stream(){switch(this.type){case"directive-line":yield{type:"directive",offset:this.offset,source:this.source};return;case"byte-order-mark":case"space":case"comment":case"newline":yield this.sourceToken;return;case"doc-mode":case"doc-start":{let $={type:"document",offset:this.offset,start:[]};if(this.type==="doc-start")$.start.push(this.sourceToken);this.stack.push($);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document($){if($.value)return yield*this.lineEnd($);switch(this.type){case"doc-start":{if(x6($.start)!==-1)yield*this.pop(),yield*this.step();else $.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":$.start.push(this.sourceToken);return}let Z=this.startBlockValue($);if(Z)this.stack.push(Z);else yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar($){if(this.type==="map-value-ind"){let Z=$2(this.peek(2)),U=b0(Z),z;if($.end)z=$.end,z.push(this.sourceToken),delete $.end;else z=[this.sourceToken];let X={type:"block-map",offset:$.offset,indent:$.indent,items:[{start:U,key:$,sep:z}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=X}else yield*this.lineEnd($)}*blockScalar($){switch(this.type){case"space":case"comment":case"newline":$.props.push(this.sourceToken);return;case"scalar":if($.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let Z=this.source.indexOf(`
135
+ `)return yield*this.pushCount(2);else return 0}*pushSpaces($){let Z=this.pos-1,U;do U=this.buffer[++Z];while(U===" "||$&&U==="\t");let X=Z-this.pos;if(X>0)yield this.buffer.substr(this.pos,X),this.pos=Z;return X}*pushUntil($){let Z=this.pos,U=this.buffer[Z];while(!$(U))U=this.buffer[++Z];return yield*this.pushToIndex(Z,!1)}}$Q.Lexer=h4});var T2=I((UQ)=>{class u4{constructor(){this.lineStarts=[],this.addNewLine=($)=>this.lineStarts.push($),this.linePos=($)=>{let Z=0,U=this.lineStarts.length;while(Z<U){let z=Z+U>>1;if(this.lineStarts[z]<$)Z=z+1;else U=z}if(this.lineStarts[Z]===$)return{line:Z+1,col:1};if(Z===0)return{line:0,col:$};let X=this.lineStarts[Z-1];return{line:Z,col:$-X+1}}}}UQ.LineCounter=u4});var K2=I((JQ)=>{var zQ=f0("process"),k4=e$(),QQ=F2();function z0($,Z){for(let U=0;U<$.length;++U)if($[U].type===Z)return!0;return!1}function v4($){for(let Z=0;Z<$.length;++Z)switch($[Z].type){case"space":case"comment":case"newline":break;default:return Z}return-1}function p4($){switch($?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function Z9($){switch($.type){case"document":return $.start;case"block-map":{let Z=$.items[$.items.length-1];return Z.sep??Z.start}case"block-seq":return $.items[$.items.length-1].start;default:return[]}}function b0($){if($.length===0)return[];let Z=$.length;$:while(--Z>=0)switch($[Z].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break $}while($[++Z]?.type==="space");return $.splice(Z,$.length)}function m4($){if($.start.type==="flow-seq-start"){for(let Z of $.items)if(Z.sep&&!Z.value&&!z0(Z.start,"explicit-key-ind")&&!z0(Z.sep,"map-value-ind")){if(Z.key)Z.value=Z.key;if(delete Z.key,p4(Z.value))if(Z.value.end)Array.prototype.push.apply(Z.value.end,Z.sep);else Z.value.end=Z.sep;else Array.prototype.push.apply(Z.start,Z.sep);delete Z.sep}}}class l4{constructor($){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new QQ.Lexer,this.onNewLine=$}*parse($,Z=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let U of this.lexer.lex($,Z))yield*this.next(U);if(!Z)yield*this.end()}*next($){if(this.source=$,zQ.env.LOG_TOKENS)console.log("|",k4.prettyToken($));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=$.length;return}let Z=k4.tokenType($);if(!Z){let U=`Not a YAML token: ${$}`;yield*this.pop({type:"error",offset:this.offset,message:U,source:$}),this.offset+=$.length}else if(Z==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=Z,yield*this.step(),Z){case"newline":if(this.atNewLine=!0,this.indent=0,this.onNewLine)this.onNewLine(this.offset+$.length);break;case"space":if(this.atNewLine&&$[0]===" ")this.indent+=$.length;break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":if(this.atNewLine)this.indent+=$.length;break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=$.length}}*end(){while(this.stack.length>0)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let $=this.peek(1);if(this.type==="doc-end"&&$?.type!=="doc-end"){while(this.stack.length>0)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!$)return yield*this.stream();switch($.type){case"document":return yield*this.document($);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar($);case"block-scalar":return yield*this.blockScalar($);case"block-map":return yield*this.blockMap($);case"block-seq":return yield*this.blockSequence($);case"flow-collection":return yield*this.flowCollection($);case"doc-end":return yield*this.documentEnd($)}yield*this.pop()}peek($){return this.stack[this.stack.length-$]}*pop($){let Z=$??this.stack.pop();if(!Z)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield Z;else{let U=this.peek(1);if(Z.type==="block-scalar")Z.indent="indent"in U?U.indent:0;else if(Z.type==="flow-collection"&&U.type==="document")Z.indent=0;if(Z.type==="flow-collection")m4(Z);switch(U.type){case"document":U.value=Z;break;case"block-scalar":U.props.push(Z);break;case"block-map":{let X=U.items[U.items.length-1];if(X.value){U.items.push({start:[],key:Z,sep:[]}),this.onKeyLine=!0;return}else if(X.sep)X.value=Z;else{Object.assign(X,{key:Z,sep:[]}),this.onKeyLine=!X.explicitKey;return}break}case"block-seq":{let X=U.items[U.items.length-1];if(X.value)U.items.push({start:[],value:Z});else X.value=Z;break}case"flow-collection":{let X=U.items[U.items.length-1];if(!X||X.value)U.items.push({start:[],key:Z,sep:[]});else if(X.sep)X.value=Z;else Object.assign(X,{key:Z,sep:[]});return}default:yield*this.pop(),yield*this.pop(Z)}if((U.type==="document"||U.type==="block-map"||U.type==="block-seq")&&(Z.type==="block-map"||Z.type==="block-seq")){let X=Z.items[Z.items.length-1];if(X&&!X.sep&&!X.value&&X.start.length>0&&v4(X.start)===-1&&(Z.indent===0||X.start.every((z)=>z.type!=="comment"||z.indent<Z.indent))){if(U.type==="document")U.end=X.start;else U.items.push({start:X.start});Z.items.splice(-1,1)}}}}*stream(){switch(this.type){case"directive-line":yield{type:"directive",offset:this.offset,source:this.source};return;case"byte-order-mark":case"space":case"comment":case"newline":yield this.sourceToken;return;case"doc-mode":case"doc-start":{let $={type:"document",offset:this.offset,start:[]};if(this.type==="doc-start")$.start.push(this.sourceToken);this.stack.push($);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document($){if($.value)return yield*this.lineEnd($);switch(this.type){case"doc-start":{if(v4($.start)!==-1)yield*this.pop(),yield*this.step();else $.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":$.start.push(this.sourceToken);return}let Z=this.startBlockValue($);if(Z)this.stack.push(Z);else yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar($){if(this.type==="map-value-ind"){let Z=Z9(this.peek(2)),U=b0(Z),X;if($.end)X=$.end,X.push(this.sourceToken),delete $.end;else X=[this.sourceToken];let z={type:"block-map",offset:$.offset,indent:$.indent,items:[{start:U,key:$,sep:X}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=z}else yield*this.lineEnd($)}*blockScalar($){switch(this.type){case"space":case"comment":case"newline":$.props.push(this.sourceToken);return;case"scalar":if($.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let Z=this.source.indexOf(`
136
136
  `)+1;while(Z!==0)this.onNewLine(this.offset+Z),Z=this.source.indexOf(`
137
- `,Z)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap($){let Z=$.items[$.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,Z.value){let U="end"in Z.value?Z.value.end:void 0;if((Array.isArray(U)?U[U.length-1]:void 0)?.type==="comment")U?.push(this.sourceToken);else $.items.push({start:[this.sourceToken]})}else if(Z.sep)Z.sep.push(this.sourceToken);else Z.start.push(this.sourceToken);return;case"space":case"comment":if(Z.value)$.items.push({start:[this.sourceToken]});else if(Z.sep)Z.sep.push(this.sourceToken);else{if(this.atIndentedComment(Z.start,$.indent)){let z=$.items[$.items.length-2]?.value?.end;if(Array.isArray(z)){Array.prototype.push.apply(z,Z.start),z.push(this.sourceToken),$.items.pop();return}}Z.start.push(this.sourceToken)}return}if(this.indent>=$.indent){let U=!this.onKeyLine&&this.indent===$.indent,z=U&&(Z.sep||Z.explicitKey)&&this.type!=="seq-item-ind",X=[];if(z&&Z.sep&&!Z.value){let Q=[];for(let J=0;J<Z.sep.length;++J){let q=Z.sep[J];switch(q.type){case"newline":Q.push(J);break;case"space":break;case"comment":if(q.indent>$.indent)Q.length=0;break;default:Q.length=0}}if(Q.length>=2)X=Z.sep.splice(Q[1])}switch(this.type){case"anchor":case"tag":if(z||Z.value)X.push(this.sourceToken),$.items.push({start:X}),this.onKeyLine=!0;else if(Z.sep)Z.sep.push(this.sourceToken);else Z.start.push(this.sourceToken);return;case"explicit-key-ind":if(!Z.sep&&!Z.explicitKey)Z.start.push(this.sourceToken),Z.explicitKey=!0;else if(z||Z.value)X.push(this.sourceToken),$.items.push({start:X,explicitKey:!0});else this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]});this.onKeyLine=!0;return;case"map-value-ind":if(Z.explicitKey)if(!Z.sep)if(X0(Z.start,"newline"))Object.assign(Z,{key:null,sep:[this.sourceToken]});else{let Q=b0(Z.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:Q,key:null,sep:[this.sourceToken]}]})}else if(Z.value)$.items.push({start:[],key:null,sep:[this.sourceToken]});else if(X0(Z.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:X,key:null,sep:[this.sourceToken]}]});else if(u6(Z.key)&&!X0(Z.sep,"newline")){let Q=b0(Z.start),J=Z.key,q=Z.sep;q.push(this.sourceToken),delete Z.key,delete Z.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:Q,key:J,sep:q}]})}else if(X.length>0)Z.sep=Z.sep.concat(X,this.sourceToken);else Z.sep.push(this.sourceToken);else if(!Z.sep)Object.assign(Z,{key:null,sep:[this.sourceToken]});else if(Z.value||z)$.items.push({start:X,key:null,sep:[this.sourceToken]});else if(X0(Z.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]});else Z.sep.push(this.sourceToken);this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let Q=this.flowScalar(this.type);if(z||Z.value)$.items.push({start:X,key:Q,sep:[]}),this.onKeyLine=!0;else if(Z.sep)this.stack.push(Q);else Object.assign(Z,{key:Q,sep:[]}),this.onKeyLine=!0;return}default:{let Q=this.startBlockValue($);if(Q){if(Q.type==="block-seq"){if(!Z.explicitKey&&Z.sep&&!X0(Z.sep,"newline")){yield*this.pop({type:"error",offset:this.offset,message:"Unexpected block-seq-ind on same line with key",source:this.source});return}}else if(U)$.items.push({start:X});this.stack.push(Q);return}}}}yield*this.pop(),yield*this.step()}*blockSequence($){let Z=$.items[$.items.length-1];switch(this.type){case"newline":if(Z.value){let U="end"in Z.value?Z.value.end:void 0;if((Array.isArray(U)?U[U.length-1]:void 0)?.type==="comment")U?.push(this.sourceToken);else $.items.push({start:[this.sourceToken]})}else Z.start.push(this.sourceToken);return;case"space":case"comment":if(Z.value)$.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(Z.start,$.indent)){let z=$.items[$.items.length-2]?.value?.end;if(Array.isArray(z)){Array.prototype.push.apply(z,Z.start),z.push(this.sourceToken),$.items.pop();return}}Z.start.push(this.sourceToken)}return;case"anchor":case"tag":if(Z.value||this.indent<=$.indent)break;Z.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==$.indent)break;if(Z.value||X0(Z.start,"seq-item-ind"))$.items.push({start:[this.sourceToken]});else Z.start.push(this.sourceToken);return}if(this.indent>$.indent){let U=this.startBlockValue($);if(U){this.stack.push(U);return}}yield*this.pop(),yield*this.step()}*flowCollection($){let Z=$.items[$.items.length-1];if(this.type==="flow-error-end"){let U;do yield*this.pop(),U=this.peek(1);while(U?.type==="flow-collection")}else if($.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":if(!Z||Z.sep)$.items.push({start:[this.sourceToken]});else Z.start.push(this.sourceToken);return;case"map-value-ind":if(!Z||Z.value)$.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Z.sep)Z.sep.push(this.sourceToken);else Object.assign(Z,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":if(!Z||Z.value)$.items.push({start:[this.sourceToken]});else if(Z.sep)Z.sep.push(this.sourceToken);else Z.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let z=this.flowScalar(this.type);if(!Z||Z.value)$.items.push({start:[],key:z,sep:[]});else if(Z.sep)this.stack.push(z);else Object.assign(Z,{key:z,sep:[]});return}case"flow-map-end":case"flow-seq-end":$.end.push(this.sourceToken);return}let U=this.startBlockValue($);if(U)this.stack.push(U);else yield*this.pop(),yield*this.step()}else{let U=this.peek(2);if(U.type==="block-map"&&(this.type==="map-value-ind"&&U.indent===$.indent||this.type==="newline"&&!U.items[U.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&U.type!=="flow-collection"){let z=$2(U),X=b0(z);h6($);let Q=$.end.splice(1,$.end.length);Q.push(this.sourceToken);let J={type:"block-map",offset:$.offset,indent:$.indent,items:[{start:X,key:$,sep:Q}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=J}else yield*this.lineEnd($)}}flowScalar($){if(this.onNewLine){let Z=this.source.indexOf(`
137
+ `,Z)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap($){let Z=$.items[$.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,Z.value){let U="end"in Z.value?Z.value.end:void 0;if((Array.isArray(U)?U[U.length-1]:void 0)?.type==="comment")U?.push(this.sourceToken);else $.items.push({start:[this.sourceToken]})}else if(Z.sep)Z.sep.push(this.sourceToken);else Z.start.push(this.sourceToken);return;case"space":case"comment":if(Z.value)$.items.push({start:[this.sourceToken]});else if(Z.sep)Z.sep.push(this.sourceToken);else{if(this.atIndentedComment(Z.start,$.indent)){let X=$.items[$.items.length-2]?.value?.end;if(Array.isArray(X)){Array.prototype.push.apply(X,Z.start),X.push(this.sourceToken),$.items.pop();return}}Z.start.push(this.sourceToken)}return}if(this.indent>=$.indent){let U=!this.onKeyLine&&this.indent===$.indent,X=U&&(Z.sep||Z.explicitKey)&&this.type!=="seq-item-ind",z=[];if(X&&Z.sep&&!Z.value){let Q=[];for(let J=0;J<Z.sep.length;++J){let q=Z.sep[J];switch(q.type){case"newline":Q.push(J);break;case"space":break;case"comment":if(q.indent>$.indent)Q.length=0;break;default:Q.length=0}}if(Q.length>=2)z=Z.sep.splice(Q[1])}switch(this.type){case"anchor":case"tag":if(X||Z.value)z.push(this.sourceToken),$.items.push({start:z}),this.onKeyLine=!0;else if(Z.sep)Z.sep.push(this.sourceToken);else Z.start.push(this.sourceToken);return;case"explicit-key-ind":if(!Z.sep&&!Z.explicitKey)Z.start.push(this.sourceToken),Z.explicitKey=!0;else if(X||Z.value)z.push(this.sourceToken),$.items.push({start:z,explicitKey:!0});else this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]});this.onKeyLine=!0;return;case"map-value-ind":if(Z.explicitKey)if(!Z.sep)if(z0(Z.start,"newline"))Object.assign(Z,{key:null,sep:[this.sourceToken]});else{let Q=b0(Z.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:Q,key:null,sep:[this.sourceToken]}]})}else if(Z.value)$.items.push({start:[],key:null,sep:[this.sourceToken]});else if(z0(Z.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:z,key:null,sep:[this.sourceToken]}]});else if(p4(Z.key)&&!z0(Z.sep,"newline")){let Q=b0(Z.start),J=Z.key,q=Z.sep;q.push(this.sourceToken),delete Z.key,delete Z.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:Q,key:J,sep:q}]})}else if(z.length>0)Z.sep=Z.sep.concat(z,this.sourceToken);else Z.sep.push(this.sourceToken);else if(!Z.sep)Object.assign(Z,{key:null,sep:[this.sourceToken]});else if(Z.value||X)$.items.push({start:z,key:null,sep:[this.sourceToken]});else if(z0(Z.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]});else Z.sep.push(this.sourceToken);this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let Q=this.flowScalar(this.type);if(X||Z.value)$.items.push({start:z,key:Q,sep:[]}),this.onKeyLine=!0;else if(Z.sep)this.stack.push(Q);else Object.assign(Z,{key:Q,sep:[]}),this.onKeyLine=!0;return}default:{let Q=this.startBlockValue($);if(Q){if(Q.type==="block-seq"){if(!Z.explicitKey&&Z.sep&&!z0(Z.sep,"newline")){yield*this.pop({type:"error",offset:this.offset,message:"Unexpected block-seq-ind on same line with key",source:this.source});return}}else if(U)$.items.push({start:z});this.stack.push(Q);return}}}}yield*this.pop(),yield*this.step()}*blockSequence($){let Z=$.items[$.items.length-1];switch(this.type){case"newline":if(Z.value){let U="end"in Z.value?Z.value.end:void 0;if((Array.isArray(U)?U[U.length-1]:void 0)?.type==="comment")U?.push(this.sourceToken);else $.items.push({start:[this.sourceToken]})}else Z.start.push(this.sourceToken);return;case"space":case"comment":if(Z.value)$.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(Z.start,$.indent)){let X=$.items[$.items.length-2]?.value?.end;if(Array.isArray(X)){Array.prototype.push.apply(X,Z.start),X.push(this.sourceToken),$.items.pop();return}}Z.start.push(this.sourceToken)}return;case"anchor":case"tag":if(Z.value||this.indent<=$.indent)break;Z.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==$.indent)break;if(Z.value||z0(Z.start,"seq-item-ind"))$.items.push({start:[this.sourceToken]});else Z.start.push(this.sourceToken);return}if(this.indent>$.indent){let U=this.startBlockValue($);if(U){this.stack.push(U);return}}yield*this.pop(),yield*this.step()}*flowCollection($){let Z=$.items[$.items.length-1];if(this.type==="flow-error-end"){let U;do yield*this.pop(),U=this.peek(1);while(U?.type==="flow-collection")}else if($.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":if(!Z||Z.sep)$.items.push({start:[this.sourceToken]});else Z.start.push(this.sourceToken);return;case"map-value-ind":if(!Z||Z.value)$.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Z.sep)Z.sep.push(this.sourceToken);else Object.assign(Z,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":if(!Z||Z.value)$.items.push({start:[this.sourceToken]});else if(Z.sep)Z.sep.push(this.sourceToken);else Z.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let X=this.flowScalar(this.type);if(!Z||Z.value)$.items.push({start:[],key:X,sep:[]});else if(Z.sep)this.stack.push(X);else Object.assign(Z,{key:X,sep:[]});return}case"flow-map-end":case"flow-seq-end":$.end.push(this.sourceToken);return}let U=this.startBlockValue($);if(U)this.stack.push(U);else yield*this.pop(),yield*this.step()}else{let U=this.peek(2);if(U.type==="block-map"&&(this.type==="map-value-ind"&&U.indent===$.indent||this.type==="newline"&&!U.items[U.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&U.type!=="flow-collection"){let X=Z9(U),z=b0(X);m4($);let Q=$.end.splice(1,$.end.length);Q.push(this.sourceToken);let J={type:"block-map",offset:$.offset,indent:$.indent,items:[{start:z,key:$,sep:Q}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=J}else yield*this.lineEnd($)}}flowScalar($){if(this.onNewLine){let Z=this.source.indexOf(`
138
138
  `)+1;while(Z!==0)this.onNewLine(this.offset+Z),Z=this.source.indexOf(`
139
- `,Z)+1}return{type:$,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue($){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let Z=$2($),U=b0(Z);return U.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:U,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let Z=$2($),U=b0(Z);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:U,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment($,Z){if(this.type!=="comment")return!1;if(this.indent<=Z)return!1;return $.every((U)=>U.type==="newline"||U.type==="space")}*documentEnd($){if(this.type!=="doc-mode"){if($.end)$.end.push(this.sourceToken);else $.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd($){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:if($.end)$.end.push(this.sourceToken);else $.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}nX.Parser=k6});var d6=_((QQ)=>{var v6=B9(),tX=Z$(),q$=U$(),eX=T2(),$Q=C(),ZQ=T9(),m6=P9();function p6($){let Z=$.prettyErrors!==!1;return{lineCounter:$.lineCounter||Z&&new ZQ.LineCounter||null,prettyErrors:Z}}function UQ($,Z={}){let{lineCounter:U,prettyErrors:z}=p6(Z),X=new m6.Parser(U?.addNewLine),Q=new v6.Composer(Z),J=Array.from(Q.compose(X.parse($)));if(z&&U)for(let q of J)q.errors.forEach(q$.prettifyError($,U)),q.warnings.forEach(q$.prettifyError($,U));if(J.length>0)return J;return Object.assign([],{empty:!0},Q.streamInfo())}function l6($,Z={}){let{lineCounter:U,prettyErrors:z}=p6(Z),X=new m6.Parser(U?.addNewLine),Q=new v6.Composer(Z),J=null;for(let q of Q.compose(X.parse($),!0,$.length))if(!J)J=q;else if(J.options.logLevel!=="silent"){J.errors.push(new q$.YAMLParseError(q.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(z&&U)J.errors.forEach(q$.prettifyError($,U)),J.warnings.forEach(q$.prettifyError($,U));return J}function zQ($,Z,U){let z=void 0;if(typeof Z==="function")z=Z;else if(U===void 0&&Z&&typeof Z==="object")U=Z;let X=l6($,U);if(!X)return null;if(X.warnings.forEach((Q)=>eX.warn(X.options.logLevel,Q)),X.errors.length>0)if(X.options.logLevel!=="silent")throw X.errors[0];else X.errors=[];return X.toJS(Object.assign({reviver:z},U))}function XQ($,Z,U){let z=null;if(typeof Z==="function"||Array.isArray(Z))z=Z;else if(U===void 0&&Z)U=Z;if(typeof U==="string")U=U.length;if(typeof U==="number"){let X=Math.round(U);U=X<1?void 0:X>8?{indent:8}:{indent:X}}if($===void 0){let{keepUndefined:X}=U??Z??{};if(!X)return}if($Q.isDocument($)&&!z)return $.toString(U);return new tX.Document($,z,U).toString(U)}QQ.parse=zQ;QQ.parseAllDocuments=UQ;QQ.parseDocument=l6;QQ.stringify=XQ});var f=[{index:1,path:"project.name",description:"Project name",category:"project"},{index:2,path:"project.goal",description:"Goal (use case)",category:"project"},{index:3,path:"project.main_language",description:"Primary language",category:"project"},{index:4,path:"human_context.who",description:"Who is this for?",category:"human"},{index:5,path:"human_context.what",description:"What are they building",category:"human"},{index:6,path:"human_context.why",description:"Why does it exist",category:"human"},{index:7,path:"human_context.where",description:"Where does it run",category:"human"},{index:8,path:"human_context.when",description:"When was it started / timeline",category:"human"},{index:9,path:"human_context.how",description:"How is it built",category:"human"},{index:10,path:"stack.frontend",canonical:"stack.framework",description:"Framework (React, Svelte, etc.)",category:"frontend"},{index:11,path:"stack.css_framework",canonical:"stack.css",description:"CSS framework",category:"frontend"},{index:12,path:"stack.ui_library",description:"UI component library",category:"frontend"},{index:13,path:"stack.state_management",canonical:"stack.state",description:"State management",category:"frontend"},{index:14,path:"stack.backend",description:"Backend framework",category:"backend"},{index:15,path:"stack.api_type",canonical:"stack.api",description:"API style (REST, GraphQL, etc.)",category:"backend"},{index:16,path:"stack.runtime",description:"Runtime (Node, Bun, Python, etc.)",category:"backend"},{index:17,path:"stack.database",canonical:"stack.db",description:"Database",category:"backend"},{index:18,path:"stack.connection",description:"Connection method (Prisma, etc.)",category:"backend"},{index:19,path:"stack.hosting",description:"Hosting platform",category:"universal"},{index:20,path:"stack.build",description:"Build tool",category:"universal"},{index:21,path:"stack.cicd",description:"CI/CD",category:"universal"},{index:22,path:"stack.monorepo_tool",description:"Monorepo tool",category:"enterprise_infra"},{index:23,path:"stack.package_manager",canonical:"stack.pkg_manager",description:"Package manager",category:"enterprise_infra"},{index:24,path:"stack.workspaces",description:"Workspace configuration",category:"enterprise_infra"},{index:25,path:"monorepo.packages_count",description:"Number of packages",category:"enterprise_infra"},{index:26,path:"monorepo.build_orchestrator",description:"Build orchestration tool",category:"enterprise_infra"},{index:27,path:"stack.admin",description:"Admin panel",category:"enterprise_app"},{index:28,path:"stack.cache",description:"Caching layer",category:"enterprise_app"},{index:29,path:"stack.search",description:"Search engine",category:"enterprise_app"},{index:30,path:"stack.storage",description:"Object storage",category:"enterprise_app"},{index:31,path:"monorepo.versioning_strategy",description:"Version strategy",category:"enterprise_ops"},{index:32,path:"monorepo.shared_configs",description:"Shared configs",category:"enterprise_ops"},{index:33,path:"monorepo.remote_cache",description:"Remote build cache",category:"enterprise_ops"}],J2=new Map(f.flatMap(($)=>$.canonical?[[$.path,$],[$.canonical,$]]:[[$.path,$]])),Pq=new Map(f.filter(($)=>$.canonical).map(($)=>[$.canonical,$.path])),Fq=new Map(f.filter(($)=>$.canonical).map(($)=>[$.path,$.canonical]));function x9($,Z){let U=(X)=>{let Q=X.split("."),J=$;for(let q of Q)if(J&&typeof J==="object"&&q in J)J=J[q];else return;return J},z=U(Z.path);if(z!==void 0)return z;if(Z.canonical)return U(Z.canonical);return}function m8($){return f.filter((Z)=>Z.category===$)}var p8=f.filter(($)=>$.index<=21),l8=f,V$=new Set(["describe your project goal","development teams","cloud platform","null","none","unknown","n/a","not applicable"]);function y0($){if($===null||$===void 0||$==="")return!0;if(typeof $==="string")return V$.has($.toLowerCase().trim());if(Array.isArray($)&&$.length===0)return!0;if(typeof $==="object"&&Object.keys($).length===0)return!0;return!1}var O0={about:[],documentation:["project","human"],intent:["project","human"],encyclopedia:["project","human"],cli:["project","human","universal"],library:["project","human","universal"],sdk:["project","human","universal"],wasm:["project","human","universal"],html:["project","human","universal"],"server-card":["project","human","universal"],frontend:["project","frontend","human","universal"],website:["project","frontend","human","universal"],mobile:["project","frontend","human","universal"],extension:["project","frontend","human","universal"],mcp:["project","backend","human","universal"],backend:["project","backend","universal","human"],"data-science":["project","backend","human","universal"],fullstack:["project","frontend","backend","universal","human"],svelte:["project","frontend","backend","universal","human"],framework:["project","frontend","backend","universal","human"],"monorepo-root":["project","human","enterprise_infra","enterprise_app","enterprise_ops"],mcpaas:["project","backend","universal","human","enterprise_app","enterprise_ops"],saas:["project","frontend","backend","universal","human","enterprise_app"],enterprise:["project","frontend","backend","universal","human","enterprise_infra","enterprise_app","enterprise_ops"]};var q2=($)=>(Z)=>`\x1B[${$}m${Z}\x1B[0m`,W$=q2("1"),f0=q2("2"),Aq=q2("3"),x0={cyan:"#00D4D4",cyanDeep:"#0E8C8C",orange:"#FF6B35"},D$=($)=>`\x1B[38;2;0;212;212m${$}\x1B[0m`,H2=($)=>`\x1B[38;2;14;140;140m${$}\x1B[0m`,_0=($)=>`\x1B[38;5;208m${$}\x1B[0m`;var a=[{name:"TROPHY",indicator:`${_0("\uD83C\uDFC6")} ${_0("TROPHY")}`,threshold:100},{name:"GOLD",indicator:`${_0(W$("★"))} ${_0("GOLD")}`,threshold:99},{name:"SILVER",indicator:`${D$("◆")} ${D$("SILVER")}`,threshold:95},{name:"BRONZE",indicator:`${H2("◇")} ${H2("BRONZE")}`,threshold:85},{name:"GREEN",indicator:`${W$("●")} GREEN`,threshold:70},{name:"YELLOW",indicator:`${f0("●")} YELLOW`,threshold:55},{name:"RED",indicator:`${f0("○")} RED`,threshold:1},{name:"WHITE",indicator:`${f0("♡")}`,threshold:0}];function h0($){for(let Z of a)if($>=Z.threshold)return Z;return a[a.length-1]}function d8($){let Z=h0($),U=a.indexOf(Z);return U>0?a[U-1]:null}var B2={};k8(B2,{validate:()=>a8,sdkVersion:()=>o8,scoreFafb:()=>n8,scoreEnterprise:()=>c8,score:()=>Y2,fafbInfo:()=>r8,decompile:()=>i8,compile:()=>s8});var G2=null;function n(){if(G2)return G2;try{let $=g0("faf-scoring-kernel");return G2=$,$}catch{throw Error(`faf-scoring-kernel not installed.
139
+ `,Z)+1}return{type:$,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue($){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let Z=Z9($),U=b0(Z);return U.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:U,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let Z=Z9($),U=b0(Z);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:U,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment($,Z){if(this.type!=="comment")return!1;if(this.indent<=Z)return!1;return $.every((U)=>U.type==="newline"||U.type==="space")}*documentEnd($){if(this.type!=="doc-mode"){if($.end)$.end.push(this.sourceToken);else $.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd($){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:if($.end)$.end.push(this.sourceToken);else $.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}JQ.Parser=l4});var i4=I((OQ)=>{var d4=W2(),HQ=U$(),H$=X$(),GQ=T9(),YQ=b(),BQ=T2(),c4=K2();function a4($){let Z=$.prettyErrors!==!1;return{lineCounter:$.lineCounter||Z&&new BQ.LineCounter||null,prettyErrors:Z}}function VQ($,Z={}){let{lineCounter:U,prettyErrors:X}=a4(Z),z=new c4.Parser(U?.addNewLine),Q=new d4.Composer(Z),J=Array.from(Q.compose(z.parse($)));if(X&&U)for(let q of J)q.errors.forEach(H$.prettifyError($,U)),q.warnings.forEach(H$.prettifyError($,U));if(J.length>0)return J;return Object.assign([],{empty:!0},Q.streamInfo())}function s4($,Z={}){let{lineCounter:U,prettyErrors:X}=a4(Z),z=new c4.Parser(U?.addNewLine),Q=new d4.Composer(Z),J=null;for(let q of Q.compose(z.parse($),!0,$.length))if(!J)J=q;else if(J.options.logLevel!=="silent"){J.errors.push(new H$.YAMLParseError(q.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(X&&U)J.errors.forEach(H$.prettifyError($,U)),J.warnings.forEach(H$.prettifyError($,U));return J}function WQ($,Z,U){let X=void 0;if(typeof Z==="function")X=Z;else if(U===void 0&&Z&&typeof Z==="object")U=Z;let z=s4($,U);if(!z)return null;if(z.warnings.forEach((Q)=>GQ.warn(z.options.logLevel,Q)),z.errors.length>0)if(z.options.logLevel!=="silent")throw z.errors[0];else z.errors=[];return z.toJS(Object.assign({reviver:X},U))}function LQ($,Z,U){let X=null;if(typeof Z==="function"||Array.isArray(Z))X=Z;else if(U===void 0&&Z)U=Z;if(typeof U==="string")U=U.length;if(typeof U==="number"){let z=Math.round(U);U=z<1?void 0:z>8?{indent:8}:{indent:z}}if($===void 0){let{keepUndefined:z}=U??Z??{};if(!z)return}if(YQ.isDocument($)&&!X)return $.toString(U);return new HQ.Document($,X,U).toString(U)}OQ.parse=WQ;OQ.parseAllDocuments=VQ;OQ.parseDocument=s4;OQ.stringify=LQ});var y=[{index:1,path:"project.name",description:"Project name",category:"project"},{index:2,path:"project.goal",description:"Goal (use case)",category:"project"},{index:3,path:"project.main_language",description:"Primary language",category:"project"},{index:4,path:"human_context.who",description:"Who is this for?",category:"human"},{index:5,path:"human_context.what",description:"What are they building",category:"human"},{index:6,path:"human_context.why",description:"Why does it exist",category:"human"},{index:7,path:"human_context.where",description:"Where does it run",category:"human"},{index:8,path:"human_context.when",description:"When was it started / timeline",category:"human"},{index:9,path:"human_context.how",description:"How is it built",category:"human"},{index:10,path:"stack.frontend",canonical:"stack.framework",description:"Framework (React, Svelte, etc.)",category:"frontend"},{index:11,path:"stack.css_framework",canonical:"stack.css",description:"CSS framework",category:"frontend"},{index:12,path:"stack.ui_library",description:"UI component library",category:"frontend"},{index:13,path:"stack.state_management",canonical:"stack.state",description:"State management",category:"frontend"},{index:14,path:"stack.backend",description:"Backend framework",category:"backend"},{index:15,path:"stack.api_type",canonical:"stack.api",description:"API style (REST, GraphQL, etc.)",category:"backend"},{index:16,path:"stack.runtime",description:"Runtime (Node, Bun, Python, etc.)",category:"backend"},{index:17,path:"stack.database",canonical:"stack.db",description:"Database",category:"backend"},{index:18,path:"stack.connection",description:"Connection method (Prisma, etc.)",category:"backend"},{index:19,path:"stack.hosting",description:"Hosting platform",category:"universal"},{index:20,path:"stack.build",description:"Build tool",category:"universal"},{index:21,path:"stack.cicd",description:"CI/CD",category:"universal"},{index:22,path:"stack.monorepo_tool",description:"Monorepo tool",category:"enterprise_infra"},{index:23,path:"stack.package_manager",canonical:"stack.pkg_manager",description:"Package manager",category:"enterprise_infra"},{index:24,path:"stack.workspaces",description:"Workspace configuration",category:"enterprise_infra"},{index:25,path:"monorepo.packages_count",description:"Number of packages",category:"enterprise_infra"},{index:26,path:"monorepo.build_orchestrator",description:"Build orchestration tool",category:"enterprise_infra"},{index:27,path:"stack.admin",description:"Admin panel",category:"enterprise_app"},{index:28,path:"stack.cache",description:"Caching layer",category:"enterprise_app"},{index:29,path:"stack.search",description:"Search engine",category:"enterprise_app"},{index:30,path:"stack.storage",description:"Object storage",category:"enterprise_app"},{index:31,path:"monorepo.versioning_strategy",description:"Version strategy",category:"enterprise_ops"},{index:32,path:"monorepo.shared_configs",description:"Shared configs",category:"enterprise_ops"},{index:33,path:"monorepo.remote_cache",description:"Remote build cache",category:"enterprise_ops"}],H9=new Map(y.flatMap(($)=>$.canonical?[[$.path,$],[$.canonical,$]]:[[$.path,$]])),rq=new Map(y.filter(($)=>$.canonical).map(($)=>[$.canonical,$.path])),nq=new Map(y.filter(($)=>$.canonical).map(($)=>[$.path,$.canonical]));function v2($,Z){let U=(z)=>{let Q=z.split("."),J=$;for(let q of Q)if(J&&typeof J==="object"&&q in J)J=J[q];else return;return J},X=U(Z.path);if(X!==void 0)return X;if(Z.canonical)return U(Z.canonical);return}function o6($){return y.filter((Z)=>Z.category===$)}var t6=y.filter(($)=>$.index<=21),e6=y,W$=new Set(["describe your project goal","development teams","cloud platform","null","none","unknown","n/a","not applicable"]);function y0($){if($===null||$===void 0||$==="")return!0;if(typeof $==="string")return W$.has($.toLowerCase().trim());if(Array.isArray($)&&$.length===0)return!0;if(typeof $==="object"&&Object.keys($).length===0)return!0;return!1}var _0={about:[],documentation:["project","human"],intent:["project","human"],encyclopedia:["project","human"],cli:["project","human","universal"],library:["project","human","universal"],sdk:["project","human","universal"],wasm:["project","human","universal"],html:["project","human","universal"],"server-card":["project","human","universal"],frontend:["project","frontend","human","universal"],website:["project","frontend","human","universal"],mobile:["project","frontend","human","universal"],extension:["project","frontend","human","universal"],mcp:["project","backend","human","universal"],backend:["project","backend","universal","human"],"data-science":["project","backend","human","universal"],fullstack:["project","frontend","backend","universal","human"],svelte:["project","frontend","backend","universal","human"],framework:["project","frontend","backend","universal","human"],"monorepo-root":["project","human","enterprise_infra","enterprise_app","enterprise_ops"],mcpaas:["project","backend","universal","human","enterprise_app","enterprise_ops"],saas:["project","frontend","backend","universal","human","enterprise_app"],enterprise:["project","frontend","backend","universal","human","enterprise_infra","enterprise_app","enterprise_ops"]};var G9=($)=>(Z)=>`\x1B[${$}m${Z}\x1B[0m`,L$=G9("1"),x0=G9("2"),tq=G9("3"),h0={cyan:"#00D4D4",cyanDeep:"#0E8C8C",orange:"#FF6B35"},O$=($)=>`\x1B[38;2;0;212;212m${$}\x1B[0m`,Y9=($)=>`\x1B[38;2;14;140;140m${$}\x1B[0m`,D0=($)=>`\x1B[38;5;208m${$}\x1B[0m`;var a=[{name:"TROPHY",indicator:`${D0("\uD83C\uDFC6")} ${D0("TROPHY")}`,threshold:100},{name:"GOLD",indicator:`${D0(L$("★"))} ${D0("GOLD")}`,threshold:99},{name:"SILVER",indicator:`${O$("◆")} ${O$("SILVER")}`,threshold:95},{name:"BRONZE",indicator:`${Y9("◇")} ${Y9("BRONZE")}`,threshold:85},{name:"GREEN",indicator:`${L$("●")} GREEN`,threshold:70},{name:"YELLOW",indicator:`${x0("●")} YELLOW`,threshold:55},{name:"RED",indicator:`${x0("○")} RED`,threshold:1},{name:"WHITE",indicator:`${x0("♡")}`,threshold:0}];function u0($){for(let Z of a)if($>=Z.threshold)return Z;return a[a.length-1]}function $8($){let Z=u0($),U=a.indexOf(Z);return U>0?a[U-1]:null}var W9={};r6(W9,{validate:()=>U8,sdkVersion:()=>q8,scoreFafb:()=>J8,scoreEnterprise:()=>Z8,score:()=>V9,fafbInfo:()=>Q8,decompile:()=>z8,compile:()=>X8});var B9=null;function n(){if(B9)return B9;try{let $=f0("faf-scoring-kernel");return B9=$,$}catch{throw Error(`faf-scoring-kernel not installed.
140
140
 
141
141
  Run: npm install faf-scoring-kernel
142
- `)}}function Y2($){return JSON.parse(n().score_faf($))}function c8($){return JSON.parse(n().score_faf_enterprise($))}function a8($){return n().validate_faf($)}function s8($){return n().compile_fafb($)}function i8($){return JSON.parse(n().decompile_fafb($))}function r8($){return JSON.parse(n().fafb_info($))}function n8($){return JSON.parse(n().score_fafb($))}function o8(){return n().sdk_version()}function h9($){return{score:$.score,tier:h0($.score),populated:$.populated,empty:$.empty,ignored:$.ignored,active:$.active,total:$.total,slots:$.slots}}function V2($){if(/^\s*app_type:\s*about\s*$/m.test($)){let U=$.match(/^\s+source_score:\s*(\d+)\s*$/m),z=U?parseInt(U[1],10):-1,X=z>=0&&z<=100?z:-1,Q=$.match(/^\s+represents:\s*(\S+)\s*$/m),J=Q?Q[1]:void 0;return{score:X,tier:X>=0?h0(X):a[a.length-1],populated:0,empty:0,ignored:0,active:0,total:0,slots:{},inherited:!0,represents:J}}return h9(Y2($))}function t8($){let Z=[];if(!$||typeof $!=="object")return Z.push("File is not a valid YAML mapping"),{valid:!1,errors:Z};let U=$;if(!U.faf_version)Z.push("Missing required field: faf_version");if(!U.project?.name)Z.push("Missing required field: project.name");if(U.app_type==="about"){if(!U.about?.represents)Z.push("app_type 'about' requires about.represents (owner/repo of the source codebase)");else if(!/^[A-Za-z0-9_.-]+\/[A-Za-z0-9_.-]+$/.test(U.about.represents))Z.push(`about.represents must be "owner/repo" format (got: ${U.about.represents})`);if(U.about?.source_score!==void 0){let z=U.about.source_score;if(typeof z!=="number"||z<0||z>100)Z.push(`about.source_score must be a number 0-100 (got: ${z})`)}}return{valid:Z.length===0,errors:Z}}import{readFileSync as r6,writeFileSync as tH,existsSync as s6}from"fs";import{join as i6,dirname as sQ}from"path";var YQ=B9(),BQ=Z$(),VQ=r2(),F9=U$(),WQ=v0(),Q0=C(),DQ=$0(),LQ=g(),OQ=U0(),_Q=z0(),rH=t$(),IQ=M9(),RQ=T9(),MQ=P9(),Z2=d6(),c6=u0();var TQ=YQ.Composer,PQ=BQ.Document,FQ=VQ.Schema,KQ=F9.YAMLError,AQ=F9.YAMLParseError,NQ=F9.YAMLWarning,wQ=WQ.Alias,bQ=Q0.isAlias,CQ=Q0.isCollection,jQ=Q0.isDocument,SQ=Q0.isMap,EQ=Q0.isNode,gQ=Q0.isPair,yQ=Q0.isScalar,fQ=Q0.isSeq,xQ=DQ.Pair,hQ=LQ.Scalar,uQ=OQ.YAMLMap,kQ=_Q.YAMLSeq;var vQ=IQ.Lexer,mQ=RQ.LineCounter,pQ=MQ.Parser,H$=Z2.parse,lQ=Z2.parseAllDocuments,dQ=Z2.parseDocument,a6=Z2.stringify,cQ=c6.visit,aQ=c6.visitAsync;function iQ($){let Z=r6($,"utf-8");return H$(Z)}function n6($){return r6($,"utf-8")}function o6($=process.cwd()){let Z=["project.faf",".faf"];for(let z of Z){let X=i6($,z);if(s6(X))return X}let U=sQ($);if(U!==$)for(let z of Z){let X=i6(U,z);if(s6(X))return X}return null}import{writeFileSync as rQ}from"fs";import{join as nQ}from"path";var t6=x0.orange,oQ=x0.cyan,tQ=x0.cyanDeep,eQ="#FF9500",$J="#FF3B30",ZJ="#E6EDF3",UJ="#6E7681",e6={TROPHY:{glyph:"\uD83C\uDFC6",color:t6},GOLD:{glyph:"★",color:t6},SILVER:{glyph:"◆",color:oQ},BRONZE:{glyph:"◇",color:tQ},GREEN:{glyph:"●",color:ZJ},YELLOW:{glyph:"●",color:eQ},RED:{glyph:"○",color:$J},WHITE:{glyph:"♡",color:UJ}};function C0($){return String($??"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}var $8=["who","what","why","where","when","how"];function U2($){return $.filter(([,Z])=>Z!==void 0&&Z!==null&&String(Z).trim()!=="").map(([Z,U])=>`<div class="row"><div class="k">${C0(Z)}</div><div class="v">${C0(U)}</div></div>`).join(`
143
- `)}function Z8($,Z,U="project.faf"){let z=C0($.project?.name??"Project"),X=Z.tier?.name??"WHITE",Q=e6[X]??e6.WHITE,J=Z.inherited?Z.represents?`inherited from ${C0(Z.represents)}`:"inherited":`${Z.score}%`,q=X==="TROPHY"&&!Z.inherited,H=$.human_context??{},G=$8.map((V)=>[V,H[V]]),W=Object.entries(H).filter(([V])=>!$8.includes(V)),Y=[["goal",$.project?.goal],["main_language",$.project?.main_language],["type",$.project?.type],["framework",$.project?.framework],["faf_version",$.faf_version]],B=Object.entries($.stack??{}),L=B.filter(([,V])=>V&&V!=="slotignored"&&String(V).trim()!==""),O=B.filter(([,V])=>V==="slotignored").length;return`<!DOCTYPE html>
142
+ `)}}function V9($){return JSON.parse(n().score_faf($))}function Z8($){return JSON.parse(n().score_faf_enterprise($))}function U8($){return n().validate_faf($)}function X8($){return n().compile_fafb($)}function z8($){return JSON.parse(n().decompile_fafb($))}function Q8($){return JSON.parse(n().fafb_info($))}function J8($){return JSON.parse(n().score_fafb($))}function q8(){return n().sdk_version()}function m2($){return{score:$.score,tier:u0($.score),populated:$.populated,empty:$.empty,ignored:$.ignored,active:$.active,total:$.total,slots:$.slots}}function L9($){if(/^\s*app_type:\s*about\s*$/m.test($)){let U=$.match(/^\s+source_score:\s*(\d+)\s*$/m),X=U?parseInt(U[1],10):-1,z=X>=0&&X<=100?X:-1,Q=$.match(/^\s+represents:\s*(\S+)\s*$/m),J=Q?Q[1]:void 0;return{score:z,tier:z>=0?u0(z):a[a.length-1],populated:0,empty:0,ignored:0,active:0,total:0,slots:{},inherited:!0,represents:J}}return m2(V9($))}function H8($){let Z=[];if(!$||typeof $!=="object")return Z.push("File is not a valid YAML mapping"),{valid:!1,errors:Z};let U=$;if(!U.faf_version)Z.push("Missing required field: faf_version");if(!U.project?.name)Z.push("Missing required field: project.name");if(U.app_type==="about"){if(!U.about?.represents)Z.push("app_type 'about' requires about.represents (owner/repo of the source codebase)");else if(!/^[A-Za-z0-9_.-]+\/[A-Za-z0-9_.-]+$/.test(U.about.represents))Z.push(`about.represents must be "owner/repo" format (got: ${U.about.represents})`);if(U.about?.source_score!==void 0){let X=U.about.source_score;if(typeof X!=="number"||X<0||X>100)Z.push(`about.source_score must be a number 0-100 (got: ${X})`)}}return{valid:Z.length===0,errors:Z}}import{readFileSync as e4,writeFileSync as AG,existsSync as o4}from"fs";import{join as t4,dirname as XJ}from"path";var MQ=W2(),PQ=U$(),FQ=o9(),A2=X$(),TQ=m0(),Q0=b(),KQ=$0(),AQ=g(),NQ=U0(),wQ=X0(),FG=e$(),bQ=F2(),CQ=T2(),jQ=K2(),U9=i4(),r4=k0();var SQ=MQ.Composer,EQ=PQ.Document,gQ=FQ.Schema,fQ=A2.YAMLError,yQ=A2.YAMLParseError,xQ=A2.YAMLWarning,hQ=TQ.Alias,uQ=Q0.isAlias,kQ=Q0.isCollection,vQ=Q0.isDocument,mQ=Q0.isMap,pQ=Q0.isNode,lQ=Q0.isPair,dQ=Q0.isScalar,cQ=Q0.isSeq,aQ=KQ.Pair,sQ=AQ.Scalar,iQ=NQ.YAMLMap,rQ=wQ.YAMLSeq;var nQ=bQ.Lexer,oQ=CQ.LineCounter,tQ=jQ.Parser,G$=U9.parse,eQ=U9.parseAllDocuments,$J=U9.parseDocument,n4=U9.stringify,ZJ=r4.visit,UJ=r4.visitAsync;function zJ($){let Z=e4($,"utf-8");return G$(Z)}function $6($){return e4($,"utf-8")}function Z6($=process.cwd()){let Z=["project.faf",".faf"];for(let X of Z){let z=t4($,X);if(o4(z))return z}let U=XJ($);if(U!==$)for(let X of Z){let z=t4(U,X);if(o4(z))return z}return null}import{writeFileSync as QJ}from"fs";import{join as JJ}from"path";var U6=h0.orange,qJ=h0.cyan,HJ=h0.cyanDeep,GJ="#FF9500",YJ="#FF3B30",BJ="#E6EDF3",VJ="#6E7681",X6={TROPHY:{glyph:"\uD83C\uDFC6",color:U6},GOLD:{glyph:"★",color:U6},SILVER:{glyph:"◆",color:qJ},BRONZE:{glyph:"◇",color:HJ},GREEN:{glyph:"●",color:BJ},YELLOW:{glyph:"●",color:GJ},RED:{glyph:"○",color:YJ},WHITE:{glyph:"♡",color:VJ}};function C0($){return String($??"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}var z6=["who","what","why","where","when","how"];function X9($){return $.filter(([,Z])=>Z!==void 0&&Z!==null&&String(Z).trim()!=="").map(([Z,U])=>`<div class="row"><div class="k">${C0(Z)}</div><div class="v">${C0(U)}</div></div>`).join(`
143
+ `)}function Q6($,Z,U="project.faf"){let X=C0($.project?.name??"Project"),z=Z.tier?.name??"WHITE",Q=X6[z]??X6.WHITE,J=Z.inherited?Z.represents?`inherited from ${C0(Z.represents)}`:"inherited":`${Z.score}%`,q=z==="TROPHY"&&!Z.inherited,H=$.human_context??{},G=z6.map((V)=>[V,H[V]]),W=Object.entries(H).filter(([V])=>!z6.includes(V)),Y=[["goal",$.project?.goal],["main_language",$.project?.main_language],["type",$.project?.type],["framework",$.project?.framework],["faf_version",$.faf_version]],B=Object.entries($.stack??{}),O=B.filter(([,V])=>V&&V!=="slotignored"&&String(V).trim()!==""),_=B.filter(([,V])=>V==="slotignored").length;return`<!DOCTYPE html>
144
144
  <html lang="en">
145
145
  <head>
146
146
  <meta charset="UTF-8">
147
147
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
148
- <title>${z} — project.faf</title>
148
+ <title>${X} — project.faf</title>
149
149
  <meta name="description" content="Visual render of project.faf. Generated by faf — humans like visuals, we gave them one.">
150
150
  <meta name="robots" content="index,follow">
151
151
  <style>
@@ -180,27 +180,27 @@ footer strong{color:#e6edf3}
180
180
  <div class="bar"></div>
181
181
  <div class="eyebrow">project.faf · visual render</div>
182
182
  <header>
183
- <h1>${z}</h1>
184
- <span class="badge">${Q.glyph} ${C0(X)}</span>
183
+ <h1>${X}</h1>
184
+ <span class="badge">${Q.glyph} ${C0(z)}</span>
185
185
  <span class="score">${J}</span>
186
186
  </header>
187
187
  <div class="meter"><span></span></div>
188
- ${q?'<p class="award statline"><span class="awd-pre">✅ All Required slots filled.</span> <span class="awd-win">100% Trophy \uD83C\uDFC6 Awarded</span></p>':`<p class="muted statline">${Z.populated}/${Z.active} slots populated · ${Z.total} total${O?` · ${O} slotignored`:""}</p>`}
188
+ ${q?'<p class="award statline"><span class="awd-pre">✅ All Required slots filled.</span> <span class="awd-win">100% Trophy \uD83C\uDFC6 Awarded</span></p>':`<p class="muted statline">${Z.populated}/${Z.active} slots populated · ${Z.total} total${_?` · ${_} slotignored`:""}</p>`}
189
189
 
190
190
  <section>
191
191
  <h2>The 6 W's</h2>
192
- ${U2(G)||'<p class="muted">No human_context yet.</p>'}
193
- ${W.length?U2(W):""}
192
+ ${X9(G)||'<p class="muted">No human_context yet.</p>'}
193
+ ${W.length?X9(W):""}
194
194
  </section>
195
195
 
196
196
  <section>
197
197
  <h2>Project</h2>
198
- ${U2(Y)||'<p class="muted">—</p>'}
198
+ ${X9(Y)||'<p class="muted">—</p>'}
199
199
  </section>
200
200
 
201
201
  <section>
202
202
  <h2>Stack</h2>
203
- ${L.length?U2(L):'<p class="muted">No active stack slots.</p>'}
203
+ ${O.length?X9(O):'<p class="muted">No active stack slots.</p>'}
204
204
  </section>
205
205
 
206
206
  <footer>
@@ -210,15 +210,17 @@ Rendered on-demand from your current <strong>${C0(U)}</strong><br>
210
210
  </div>
211
211
  </body>
212
212
  </html>
213
- `}function zJ($,Z,U,z="project.faf"){rQ(nQ($,"project.html"),Z8(Z,U,z),"utf-8")}var J8="faf-interview/1",j0="(terse — 3-4 words)",K9=[{path:"project.name",question:"What is the name of this project?",header:"Name",type:"text",required:!0},{path:"project.goal",question:"What does this project do? (one sentence)",header:"Goal",type:"text",required:!0},{path:"human_context.who",question:`Who is this for? ${j0}`,header:"Who",type:"text",required:!0},{path:"human_context.what",question:`What are they building? ${j0}`,header:"What",type:"text",required:!0},{path:"human_context.why",question:`Why does it exist? ${j0}`,header:"Why",type:"text",required:!0},{path:"human_context.where",question:`Where does it run or ship? ${j0}`,header:"Where",type:"text",required:!0},{path:"human_context.when",question:`When — timeline or stage? ${j0}`,header:"When",type:"text",required:!0},{path:"human_context.how",question:`How is it built or used? ${j0}`,header:"How",type:"text",required:!0}],q8=[{path:"project.main_language",question:"What is the primary programming language?",header:"Language",type:"select",required:!0,options:[{label:"TypeScript",value:"TypeScript",description:"JavaScript with types"},{label:"JavaScript",value:"JavaScript",description:"Vanilla JS or Node.js"},{label:"Python",value:"Python",description:"Python 3.x"},{label:"Rust",value:"Rust",description:"Systems programming"},{label:"Go",value:"Go",description:"Golang"},{label:"Other",value:"Other",description:"Specify manually"}]},{path:"stack.frontend",question:"What frontend framework does it use?",header:"Frontend",type:"select",required:!1,options:[{label:"React",value:"React",description:"React.js"},{label:"Vue",value:"Vue",description:"Vue.js"},{label:"Svelte",value:"Svelte",description:"Svelte/SvelteKit"},{label:"Next.js",value:"Next.js",description:"React framework"},{label:"None",value:"None",description:"No frontend"},{label:"Other",value:"Other",description:"Specify manually"}]},{path:"stack.backend",question:"What backend framework does it use?",header:"Backend",type:"select",required:!1,options:[{label:"Express",value:"Express",description:"Node.js Express"},{label:"Fastify",value:"Fastify",description:"Node.js Fastify"},{label:"Django",value:"Django",description:"Python Django"},{label:"FastAPI",value:"FastAPI",description:"Python FastAPI"},{label:"None",value:"None",description:"No backend"},{label:"Other",value:"Other",description:"Specify manually"}]},{path:"stack.database",question:"What database does it use?",header:"Database",type:"select",required:!1,options:[{label:"PostgreSQL",value:"PostgreSQL",description:"Postgres"},{label:"MySQL",value:"MySQL",description:"MySQL/MariaDB"},{label:"SQLite",value:"SQLite",description:"Embedded SQL"},{label:"MongoDB",value:"MongoDB",description:"Document store"},{label:"None",value:"None",description:"No database"},{label:"Other",value:"Other",description:"Specify manually"}]},{path:"stack.runtime",question:"What runtime does it run on?",header:"Runtime",type:"text",required:!1},{path:"stack.hosting",question:"Where is it hosted or distributed?",header:"Hosting",type:"text",required:!1},{path:"stack.build",question:"What is the build tool?",header:"Build",type:"text",required:!1},{path:"stack.cicd",question:"What CI/CD does it use?",header:"CI/CD",type:"text",required:!1}],z2=[...K9,...q8],H8=new Map(z2.map(($)=>[$.path,$])),XJ=Object.fromEntries(z2.map(($)=>[$.path,$]));function QJ($){let Z=H8.get($);if(Z)return Z.question;let U=J2.get($)??f.find((z)=>z.canonical===$);return U?`${U.description}?`.replace(/\?\?$/,"?"):`${$}?`}function JJ($,Z){return z2.filter((U)=>{let z=U.path.split("."),X=$;for(let Q of z)if(X&&typeof X==="object"&&Q in X)X=X[Q];else{X=void 0;break}if(X==="slotignored")return!1;return Z(X)})}var qJ=new Set(["developers","development teams","development team","teams","development","cloud platform","web platform","platform","best practices","improve development efficiency","development efficiency","modern development practices","modern development","test-driven development","production/stable","production","stable","app","project","tool"]),HJ=[["npm",/\bnpm\b/i],["PyPI",/\bpypi\b/i],["crates.io",/\bcrates\.io\b/i],["Homebrew",/\bhomebrew\b/i],["Docker",/\bdocker\b/i],["Cloudflare",/\bcloudflare\b/i],["Vercel",/\bvercel\b/i],["Netlify",/\bnetlify\b/i],["AWS",/\baws\b/i],["Cloud Run",/\bcloud run\b/i],["edge",/\bedge\b/i],["browser",/\bbrowser\b/i],["WASM",/\bwasm\b/i],["GitHub",/\bgithub\b/i],["MCP Registry",/\bmcp registry\b/i],["Chrome Web Store",/\bchrome web store\b/i],["Smithery",/\bsmithery\b/i]],U8=($)=>qJ.has($.toLowerCase().trim()),GJ=/^(?:with|and|or|using|for|to|that|who|whom|whose|the|a|an|in|on|of|via|by|&)$/i;function z8($,Z=5){let U=$.trim().split(/\s+/).filter(Boolean).slice(0,Z);while(U.length&&GJ.test(U[U.length-1].replace(/[.,;:]+$/,"")))U.pop();return U.join(" ")}function G8($){let Z={};if(!$||typeof $!=="string")return Z;let U=$.trim(),z=U.replace(/^[^A-Za-z0-9]+/,"").split(/\s+(?:for|that|which|to)\s+|\s+[—–]\s+|\s-\s|:\s|\.\s|,\s/)[0].trim(),X=z8(z);if(X.split(/\s+/).filter(Boolean).length>=2&&!U8(X))Z.what=X;let Q=HJ.filter(([,H])=>H.test(U)).map(([H])=>H);if(Q.length)Z.where=Q.slice(0,4).join(", ");let J=U.match(/\bfor ((?:[A-Za-z][\w./+-]* )?(?:any |all )?(?:developers?|teams?|engineers?|builders?|users?|integrators?)\b[^.,;:—]*)/i),q=z8((J?.[1]||"").trim().replace(/\s+/g," "));if(q&&!U8(q))Z.who=q;return Z}function X8($,Z){let U=$;for(let z of Z.split("."))if(U&&typeof U==="object"&&z in U)U=U[z];else return;return U}function Q8($){if(typeof $!=="string")return!1;let Z=$.trim();if(!Z||Z==="slotignored")return!1;return!y0(Z)}function YJ($,Z={}){let U=$&&typeof $==="object"?$:{},z=X8(U,"project.goal"),X=(Q8(z)?String(z).trim():"")||(Z.goal??"").trim(),Q=G8(X),J={"project.goal":X||void 0,"human_context.what":Q.what,"human_context.where":Q.where,"human_context.who":Q.who},q=K9.map((Y,B)=>{let L={n:B+1,path:Y.path,header:Y.header,question:Y.question},O=X8(U,Y.path);if(Q8(O))return{...L,value:String(O).trim(),status:"filled",seeded:!1};let V=J[Y.path];if(V)return{...L,value:V,status:"seeded",seeded:!0};return{...L,value:"",status:"empty",seeded:!1}}),H=q.filter((Y)=>Y.status==="filled").length,G=q.filter((Y)=>Y.status==="seeded").length,W=q.filter((Y)=>Y.status==="empty").length;return{version:J8,rows:q,filledCount:H,seededCount:G,emptyCount:W,complete:W===0}}import{createHash as B8}from"crypto";var A9="faf-bench/1",BJ={"project.name":"What is the project's name?","project.goal":"What is the project's goal — what is it for?","project.main_language":"What is the primary programming language?","human_context.who":"Who is this project for?","human_context.what":"What are they building?","human_context.why":"Why does this project exist?","human_context.where":"Where does it run or get distributed?","human_context.when":"When — what is the project's timeline or stage?","human_context.how":"How is it built or used?"};function VJ($,Z){return BJ[$]??`What is the project's ${Z.replace(/\s*\(.*\)$/,"").toLowerCase()}?`}var V8=[["typescript","ts"],["javascript","js"],["python","py","python3"],["node","nodejs","node js","node.js"],["github actions","gh actions","actions"],["postgresql","postgres","pg"],["kubernetes","k8s"],["npm","npm registry"],["cloudflare workers","cf workers","workers"],["google cloud run","cloud run","gcp cloud run"]],G$=new Map;V8.forEach(($,Z)=>$.forEach((U)=>G$.set(U,Z)));var WJ=new Set(["a","an","the","and","or","of","for","to","in","on","with","is","it","its","their","your","via","by","using","use","used"]);function X2($){return $.toLowerCase().replace(/[^a-z0-9\s.+#-]/g," ").replace(/\.(?=\s|$)/g," ").replace(/\s+/g," ").trim()}function Y8($){return X2($).split(" ").filter((Z)=>Z&&!WJ.has(Z))}function W8($,Z){let U=X2($),z=X2(Z);if(!U||!z)return!1;if(U===z)return!0;let X=G$.get(U);if(X!==void 0&&G$.get(z)===X)return!0;let Q=Y8($);if(Q.length===0)return!1;let J=new Set(Y8(Z));return Q.every((q)=>{if(J.has(q))return!0;let H=G$.get(q);return H!==void 0&&[...J].some((G)=>G$.get(G)===H)})}function DJ($){let Z=V2($),U=H$($),z=[],X={},Q=0;for(let H of f){if(Z.slots[H.path]!=="populated")continue;let G=x9(U,H);if(typeof G!=="string")continue;let W=G.trim();if(!W||V$.has(W.toLowerCase()))continue;Q+=1,z.push({n:Q,path:H.path,question:VJ(H.path,H.description)}),X[Q]=W}let J=JSON.stringify({v:A9,q:z.map((H)=>[H.path,H.question])}),q=B8("sha256").update(J).digest("hex").slice(0,12);return{version:A9,qsetHash:q,questions:z,answers:X}}function LJ($){return{version:$.version,qsetHash:$.qsetHash,questions:$.questions}}function OJ($,Z){let U=$.questions.map((X)=>{let Q=Z[String(X.n)]??Z[X.path]??"";return{n:X.n,path:X.path,ok:typeof Q==="string"&&Q.trim()!==""&&W8($.answers[X.n],Q)}}),z=$.questions.filter((X)=>!U[X.n-1].ok);return{correct:U.filter((X)=>X.ok).length,total:$.questions.length,misses:z,perQuestion:U}}function _J($,Z){let U=JSON.stringify({v:$.version,repo:Z??null,qset:$.qsetHash,protocol:$.protocol,cold:$.cold??null,faf:$.faf??null});return{projection:U,hash:B8("sha256").update(U).digest("hex")}}import{existsSync as IJ,readdirSync as D8,readFileSync as RJ}from"fs";import{join as w9,dirname as MJ,extname as TJ,resolve as PJ}from"path";var N9={"package.json":{frameworks:["Node.js","JavaScript","TypeScript"],slots:{packageManager:"npm/yarn/pnpm",mainLanguage:"JavaScript/TypeScript"},priority:35,intelligence:"ultra-high"},"README.md":{frameworks:[],slots:{targetUser:"developers",coreProblem:"understanding project",missionPurpose:"project documentation"},priority:25,intelligence:"high"},"requirements.txt":{frameworks:["Python"],slots:{packageManager:"pip",mainLanguage:"Python"},priority:35,intelligence:"ultra-high"},Pipfile:{frameworks:["Python"],slots:{packageManager:"pipenv",mainLanguage:"Python"},priority:35,intelligence:"ultra-high"},"pyproject.toml":{frameworks:["Python"],slots:{mainLanguage:"Python",runtime:"Python",backend:"Python"},priority:36,intelligence:"ultra-high"},Gemfile:{frameworks:["Ruby","Rails"],slots:{packageManager:"bundler",mainLanguage:"Ruby"},priority:35,intelligence:"ultra-high"},"composer.json":{frameworks:["PHP","Laravel","Symfony"],slots:{packageManager:"composer",mainLanguage:"PHP"},priority:35,intelligence:"ultra-high"},"Cargo.toml":{frameworks:["Rust"],slots:{packageManager:"cargo",mainLanguage:"Rust",buildTool:"cargo"},priority:36,intelligence:"ultra-high"},"go.mod":{frameworks:["Go"],slots:{packageManager:"go modules",mainLanguage:"Go",buildTool:"go build"},priority:36,intelligence:"ultra-high"},"pubspec.yaml":{frameworks:["Flutter","Dart"],slots:{packageManager:"pub",mainLanguage:"Dart",framework:"Flutter"},priority:35,intelligence:"ultra-high"},"pom.xml":{frameworks:["Java","Spring","Maven"],slots:{packageManager:"maven",mainLanguage:"Java",buildTool:"maven"},priority:35,intelligence:"ultra-high"},"build.gradle":{frameworks:["Java","Kotlin","Spring","Gradle"],slots:{packageManager:"gradle",mainLanguage:"Java/Kotlin",buildTool:"gradle"},priority:35,intelligence:"ultra-high"},"next.config.js":{frameworks:["Next.js"],slots:{framework:"Next.js",runtime:"Node.js",buildTool:"Next.js",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"next.config.mjs":{frameworks:["Next.js"],slots:{framework:"Next.js",runtime:"Node.js",buildTool:"Next.js",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"next.config.ts":{frameworks:["Next.js 13+"],slots:{framework:"Next.js 13+",runtime:"Node.js",buildTool:"Next.js",mainLanguage:"TypeScript",server:"Node.js"},priority:30,intelligence:"high"},"nuxt.config.js":{frameworks:["Nuxt 2"],slots:{framework:"Nuxt 2",runtime:"Node.js",buildTool:"Nuxt",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"nuxt.config.ts":{frameworks:["Nuxt 3"],slots:{framework:"Nuxt 3",runtime:"Node.js",buildTool:"Nuxt",mainLanguage:"TypeScript",server:"Node.js"},priority:30,intelligence:"high"},"svelte.config.js":{frameworks:["SvelteKit"],slots:{framework:"SvelteKit",buildTool:"Vite",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"angular.json":{frameworks:["Angular"],slots:{framework:"Angular",buildTool:"Angular CLI",mainLanguage:"TypeScript",server:"Node.js"},priority:30,intelligence:"high"},"manifest.json":{frameworks:["Chrome Extension","Browser Extension"],slots:{framework:"Chrome Extension",runtime:"Chrome/Browser",mainLanguage:"JavaScript",hosting:"Chrome Web Store",apiType:"Chrome APIs"},priority:35,intelligence:"ultra-high",confirmWith:["popup.html","background.js","content.js"]},"vue.config.js":{frameworks:["Vue"],slots:{framework:"Vue",buildTool:"Vue CLI",mainLanguage:"JavaScript"},priority:30,intelligence:"high"},"remix.config.js":{frameworks:["Remix"],slots:{framework:"Remix",runtime:"Node.js",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"gatsby-config.js":{frameworks:["Gatsby"],slots:{framework:"Gatsby",buildTool:"Gatsby",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"gatsby-config.ts":{frameworks:["Gatsby"],slots:{framework:"Gatsby",buildTool:"Gatsby",mainLanguage:"TypeScript",server:"Node.js"},priority:30,intelligence:"high"},"astro.config.mjs":{frameworks:["Astro"],slots:{framework:"Astro",buildTool:"Vite",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"redwood.toml":{frameworks:["RedwoodJS"],slots:{framework:"RedwoodJS",buildTool:"Webpack",mainLanguage:"JavaScript/TypeScript",server:"Node.js",database:"Prisma"},priority:30,intelligence:"high"},"blitz.config.ts":{frameworks:["Blitz.js"],slots:{framework:"Blitz.js",buildTool:"Next.js",mainLanguage:"TypeScript",server:"Node.js",database:"Prisma"},priority:30,intelligence:"high"},"qwik.config.ts":{frameworks:["Qwik"],slots:{framework:"Qwik",buildTool:"Vite",mainLanguage:"TypeScript",server:"Node.js"},priority:30,intelligence:"high"},"manage.py":{frameworks:["Django"],slots:{framework:"Django",backend:"Django",mainLanguage:"Python",server:"Django",apiType:"Django Views"},priority:30,intelligence:"high"},artisan:{frameworks:["Laravel"],slots:{framework:"Laravel",backend:"Laravel",mainLanguage:"PHP",server:"PHP",apiType:"Laravel Routes"},priority:30,intelligence:"high"},"mix.exs":{frameworks:["Phoenix","Elixir"],slots:{framework:"Phoenix",backend:"Phoenix",mainLanguage:"Elixir",server:"BEAM"},priority:30,intelligence:"high"},"nest-cli.json":{frameworks:["NestJS"],slots:{framework:"NestJS",backend:"NestJS",mainLanguage:"TypeScript",server:"Node.js",apiType:"REST API"},priority:30,intelligence:"high"},"strapi.config.js":{frameworks:["Strapi"],slots:{backend:"Strapi",apiType:"REST API",database:"Required",server:"Node.js"},priority:30,intelligence:"high"},Dockerfile:{frameworks:["Docker"],slots:{hosting:"Docker",connection:"Containerized"},priority:30,intelligence:"high"},"docker-compose.yml":{frameworks:["Docker Compose"],slots:{hosting:"Docker",connection:"Multi-container"},priority:30,intelligence:"high"},"docker-compose.yaml":{frameworks:["Docker Compose"],slots:{hosting:"Docker",connection:"Multi-container"},priority:30,intelligence:"high"},"kubernetes.yml":{frameworks:["Kubernetes"],slots:{hosting:"Kubernetes",connection:"Orchestrated"},priority:30,intelligence:"high"},"k8s.yaml":{frameworks:["Kubernetes"],slots:{hosting:"Kubernetes",connection:"Orchestrated"},priority:30,intelligence:"high"},"vercel.json":{frameworks:["Vercel"],slots:{hosting:"Vercel",cicd:"Vercel"},priority:30,intelligence:"high"},"netlify.toml":{frameworks:["Netlify"],slots:{hosting:"Netlify",cicd:"Netlify"},priority:30,intelligence:"high"},"render.yaml":{frameworks:["Render"],slots:{hosting:"Render",cicd:"Render"},priority:30,intelligence:"high"},"fly.toml":{frameworks:["Fly.io"],slots:{hosting:"Fly.io",cicd:"Fly.io"},priority:30,intelligence:"high"},"railway.json":{frameworks:["Railway"],slots:{hosting:"Railway",cicd:"Railway"},priority:30,intelligence:"high"},"railway.toml":{frameworks:["Railway"],slots:{hosting:"Railway",cicd:"Railway"},priority:30,intelligence:"high"},"app.yaml":{frameworks:["Google App Engine"],slots:{hosting:"Google Cloud",cicd:"Google Cloud"},priority:30,intelligence:"high"},Procfile:{frameworks:["Heroku"],slots:{hosting:"Heroku",cicd:"Heroku"},priority:30,intelligence:"high"},"vite.config.js":{frameworks:["Vite"],slots:{buildTool:"Vite"},priority:25,intelligence:"medium"},"vite.config.ts":{frameworks:["Vite"],slots:{buildTool:"Vite",mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"webpack.config.js":{frameworks:["Webpack"],slots:{buildTool:"Webpack"},priority:25,intelligence:"medium"},"rollup.config.js":{frameworks:["Rollup"],slots:{buildTool:"Rollup"},priority:25,intelligence:"medium"},"esbuild.config.js":{frameworks:["esbuild"],slots:{buildTool:"esbuild"},priority:25,intelligence:"medium"},"parcel.config.js":{frameworks:["Parcel"],slots:{buildTool:"Parcel"},priority:25,intelligence:"medium"},"snowpack.config.js":{frameworks:["Snowpack"],slots:{buildTool:"Snowpack"},priority:25,intelligence:"medium"},"tsconfig.json":{frameworks:["TypeScript"],slots:{mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"jsconfig.json":{frameworks:["JavaScript"],slots:{mainLanguage:"JavaScript"},priority:20,intelligence:"medium"},"babel.config.js":{frameworks:["Babel"],slots:{buildTool:"Babel"},priority:20,intelligence:"medium"},".babelrc":{frameworks:["Babel"],slots:{buildTool:"Babel"},priority:20,intelligence:"medium"},"jest.config.js":{frameworks:["Jest"],slots:{cicd:"Jest"},priority:25,intelligence:"medium"},"jest.config.ts":{frameworks:["Jest"],slots:{cicd:"Jest",mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"vitest.config.ts":{frameworks:["Vitest"],slots:{cicd:"Vitest",mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"cypress.config.js":{frameworks:["Cypress"],slots:{cicd:"Cypress"},priority:25,intelligence:"medium"},"playwright.config.ts":{frameworks:["Playwright"],slots:{cicd:"Playwright",mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"karma.conf.js":{frameworks:["Karma"],slots:{cicd:"Karma"},priority:20,intelligence:"medium"},"mocha.opts":{frameworks:["Mocha"],slots:{cicd:"Mocha"},priority:20,intelligence:"medium"},".rspec":{frameworks:["RSpec"],slots:{cicd:"RSpec",mainLanguage:"Ruby"},priority:25,intelligence:"medium"},"pytest.ini":{frameworks:["Pytest"],slots:{cicd:"Pytest",mainLanguage:"Python"},priority:25,intelligence:"medium"},"phpunit.xml":{frameworks:["PHPUnit"],slots:{cicd:"PHPUnit",mainLanguage:"PHP"},priority:25,intelligence:"medium"},"schema.prisma":{frameworks:["Prisma"],slots:{database:"Prisma ORM",connection:"Prisma"},priority:25,intelligence:"medium"},"drizzle.config.ts":{frameworks:["Drizzle"],slots:{database:"Drizzle ORM",connection:"Drizzle",mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"ormconfig.js":{frameworks:["TypeORM"],slots:{database:"TypeORM",connection:"TypeORM"},priority:25,intelligence:"medium"},"knexfile.js":{frameworks:["Knex.js"],slots:{database:"Knex.js",connection:"Knex.js"},priority:25,intelligence:"medium"},"sequelize.config.js":{frameworks:["Sequelize"],slots:{database:"Sequelize",connection:"Sequelize"},priority:25,intelligence:"medium"},"alembic.ini":{frameworks:["Alembic"],slots:{database:"Alembic",mainLanguage:"Python"},priority:25,intelligence:"medium"},".github/workflows":{frameworks:["GitHub Actions"],slots:{cicd:"GitHub Actions"},priority:25,intelligence:"medium"},".gitlab-ci.yml":{frameworks:["GitLab CI"],slots:{cicd:"GitLab CI"},priority:25,intelligence:"medium"},Jenkinsfile:{frameworks:["Jenkins"],slots:{cicd:"Jenkins"},priority:25,intelligence:"medium"},".circleci/config.yml":{frameworks:["CircleCI"],slots:{cicd:"CircleCI"},priority:25,intelligence:"medium"},".travis.yml":{frameworks:["Travis CI"],slots:{cicd:"Travis CI"},priority:25,intelligence:"medium"},"azure-pipelines.yml":{frameworks:["Azure DevOps"],slots:{cicd:"Azure DevOps"},priority:25,intelligence:"medium"},"bitbucket-pipelines.yml":{frameworks:["Bitbucket Pipelines"],slots:{cicd:"Bitbucket Pipelines"},priority:25,intelligence:"medium"},"tailwind.config.js":{frameworks:["Tailwind CSS"],slots:{cssFramework:"Tailwind CSS"},priority:20,intelligence:"medium"},"tailwind.config.ts":{frameworks:["Tailwind CSS"],slots:{cssFramework:"Tailwind CSS",mainLanguage:"TypeScript"},priority:20,intelligence:"medium"},"postcss.config.js":{frameworks:["PostCSS"],slots:{cssFramework:"PostCSS"},priority:20,intelligence:"medium"},"uno.config.ts":{frameworks:["UnoCSS"],slots:{cssFramework:"UnoCSS",mainLanguage:"TypeScript"},priority:20,intelligence:"medium"},"styled-components.config.js":{frameworks:["styled-components"],slots:{cssFramework:"styled-components",uiLibrary:"styled-components"},priority:20,intelligence:"medium"},"emotion.config.js":{frameworks:["Emotion"],slots:{cssFramework:"Emotion",uiLibrary:"Emotion"},priority:20,intelligence:"medium"},"metro.config.js":{frameworks:["React Native"],slots:{framework:"React Native",mainLanguage:"JavaScript"},priority:25,intelligence:"medium"},"expo.config.js":{frameworks:["Expo"],slots:{framework:"React Native",buildTool:"Expo"},priority:25,intelligence:"medium"},"app.json":{frameworks:["React Native","Expo"],slots:{framework:"React Native"},priority:20,intelligence:"medium",confirmWith:["expo"]},"capacitor.config.ts":{frameworks:["Capacitor"],slots:{framework:"Capacitor",mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"ionic.config.json":{frameworks:["Ionic"],slots:{framework:"Ionic",uiLibrary:"Ionic"},priority:25,intelligence:"medium"},"nx.json":{frameworks:["Nx"],slots:{buildTool:"Nx"},priority:25,intelligence:"medium"},"turbo.json":{frameworks:["Turborepo"],slots:{buildTool:"Turborepo"},priority:25,intelligence:"medium"},"lerna.json":{frameworks:["Lerna"],slots:{buildTool:"Lerna"},priority:25,intelligence:"medium"},"rush.json":{frameworks:["Rush"],slots:{buildTool:"Rush"},priority:25,intelligence:"medium"},"pnpm-workspace.yaml":{frameworks:["pnpm workspaces"],slots:{packageManager:"pnpm",buildTool:"pnpm workspaces"},priority:25,intelligence:"medium"},"*.svelte":{frameworks:["Svelte","SvelteKit"],slots:{framework:"Svelte"},priority:15,intelligence:"low"},"*.vue":{frameworks:["Vue"],slots:{framework:"Vue"},priority:15,intelligence:"low"},"*.jsx":{frameworks:["React"],slots:{framework:"React",mainLanguage:"JavaScript"},priority:15,intelligence:"low"},"*.ts":{frameworks:["TypeScript"],slots:{mainLanguage:"TypeScript"},priority:15,intelligence:"low"},"*.tsx":{frameworks:["React","TypeScript"],slots:{framework:"React",mainLanguage:"TypeScript"},priority:15,intelligence:"low"},"*.py":{frameworks:["Python"],slots:{mainLanguage:"Python"},priority:15,intelligence:"low"},"*.rb":{frameworks:["Ruby"],slots:{mainLanguage:"Ruby"},priority:15,intelligence:"low"},"*.php":{frameworks:["PHP"],slots:{mainLanguage:"PHP"},priority:15,intelligence:"low"},"*.java":{frameworks:["Java"],slots:{mainLanguage:"Java"},priority:15,intelligence:"low"},"*.kt":{frameworks:["Kotlin"],slots:{mainLanguage:"Kotlin"},priority:15,intelligence:"low"},"*.swift":{frameworks:["Swift"],slots:{mainLanguage:"Swift"},priority:15,intelligence:"low"},"*.go":{frameworks:["Go"],slots:{mainLanguage:"Go"},priority:15,intelligence:"low"},"*.rs":{frameworks:["Rust"],slots:{mainLanguage:"Rust"},priority:15,intelligence:"low"},"*.dart":{frameworks:["Flutter","Dart"],slots:{mainLanguage:"Dart"},priority:15,intelligence:"low"},"*.ex":{frameworks:["Elixir"],slots:{mainLanguage:"Elixir"},priority:15,intelligence:"low"},"*.exs":{frameworks:["Elixir"],slots:{mainLanguage:"Elixir"},priority:15,intelligence:"low"},"*.scala":{frameworks:["Scala"],slots:{mainLanguage:"Scala"},priority:15,intelligence:"low"},"*.clj":{frameworks:["Clojure"],slots:{mainLanguage:"Clojure"},priority:15,intelligence:"low"},"*.lua":{frameworks:["Lua"],slots:{mainLanguage:"Lua"},priority:15,intelligence:"low"},"*.r":{frameworks:["R"],slots:{mainLanguage:"R"},priority:15,intelligence:"low"},"*.R":{frameworks:["R"],slots:{mainLanguage:"R"},priority:15,intelligence:"low"},"*.jl":{frameworks:["Julia"],slots:{mainLanguage:"Julia"},priority:15,intelligence:"low"},"*.nim":{frameworks:["Nim"],slots:{mainLanguage:"Nim"},priority:15,intelligence:"low"},"*.zig":{frameworks:["Zig"],slots:{mainLanguage:"Zig"},priority:15,intelligence:"low"},"build.zig":{frameworks:["Zig"],slots:{packageManager:"Zig Package Manager",mainLanguage:"Zig",buildTool:"zig build",framework:"Zig",build:"zig build"},priority:35,intelligence:"ultra-high"},"openapi.json":{frameworks:["OpenAPI"],slots:{apiType:"REST API",backend:"API Server"},priority:30,intelligence:"high"},"openapi.yaml":{frameworks:["OpenAPI"],slots:{apiType:"REST API",backend:"API Server"},priority:30,intelligence:"high"},"swagger.json":{frameworks:["Swagger"],slots:{apiType:"REST API",backend:"API Server"},priority:30,intelligence:"high"},"graphql.schema":{frameworks:["GraphQL"],slots:{apiType:"GraphQL",backend:"GraphQL Server"},priority:30,intelligence:"high"},"schema.graphql":{frameworks:["GraphQL"],slots:{apiType:"GraphQL",backend:"GraphQL Server"},priority:30,intelligence:"high"},".graphqlconfig":{frameworks:["GraphQL"],slots:{apiType:"GraphQL"},priority:25,intelligence:"medium"},"redux.config.js":{frameworks:["Redux"],slots:{stateManagement:"Redux"},priority:20,intelligence:"medium"},"mobx.config.js":{frameworks:["MobX"],slots:{stateManagement:"MobX"},priority:20,intelligence:"medium"},"vuex.config.js":{frameworks:["Vuex"],slots:{stateManagement:"Vuex",framework:"Vue"},priority:20,intelligence:"medium"},"pinia.config.js":{frameworks:["Pinia"],slots:{stateManagement:"Pinia",framework:"Vue"},priority:20,intelligence:"medium"},"zustand.config.js":{frameworks:["Zustand"],slots:{stateManagement:"Zustand"},priority:20,intelligence:"medium"},".eslintrc.js":{frameworks:["ESLint"],slots:{},priority:15,intelligence:"low"},".eslintrc.json":{frameworks:["ESLint"],slots:{},priority:15,intelligence:"low"},".prettierrc":{frameworks:["Prettier"],slots:{},priority:15,intelligence:"low"},".prettierrc.json":{frameworks:["Prettier"],slots:{},priority:15,intelligence:"low"},"biome.json":{frameworks:["Biome"],slots:{},priority:15,intelligence:"low"},".editorconfig":{frameworks:["EditorConfig"],slots:{},priority:10,intelligence:"low"},"serverless.yml":{frameworks:["Serverless Framework"],slots:{hosting:"AWS Lambda/Azure/GCP",backend:"Serverless",apiType:"API Gateway"},priority:30,intelligence:"high"},"serverless.yaml":{frameworks:["Serverless Framework"],slots:{hosting:"AWS Lambda/Azure/GCP",backend:"Serverless",apiType:"API Gateway"},priority:30,intelligence:"high"},"sam.yaml":{frameworks:["AWS SAM"],slots:{hosting:"AWS Lambda",backend:"AWS SAM",cicd:"AWS SAM CLI"},priority:30,intelligence:"high"},"template.yaml":{frameworks:["AWS SAM","CloudFormation"],slots:{hosting:"AWS",backend:"AWS SAM/CloudFormation",cicd:"AWS"},priority:25,intelligence:"medium",confirmWith:["samconfig.toml"]},"amplify.yml":{frameworks:["AWS Amplify"],slots:{hosting:"AWS Amplify",backend:"AWS Amplify",cicd:"AWS Amplify"},priority:30,intelligence:"high"},Podfile:{frameworks:["CocoaPods","iOS"],slots:{packageManager:"CocoaPods",mainLanguage:"Swift/Objective-C",framework:"iOS Native"},priority:30,intelligence:"high"},"build.gradle.kts":{frameworks:["Gradle Kotlin DSL","Android","Kotlin"],slots:{packageManager:"Gradle",mainLanguage:"Kotlin",buildTool:"Gradle Kotlin DSL",framework:"Android"},priority:30,intelligence:"high"},"*.ipynb":{frameworks:["Jupyter","Python"],slots:{mainLanguage:"Python",framework:"Jupyter Notebook"},priority:30,intelligence:"high"},MLproject:{frameworks:["MLflow"],slots:{mainLanguage:"Python",framework:"MLflow",backend:"MLflow",cicd:"MLflow"},priority:30,intelligence:"high"},"dvc.yaml":{frameworks:["DVC","Data Version Control"],slots:{mainLanguage:"Python",framework:"DVC",cicd:"DVC Pipelines"},priority:30,intelligence:"high"},"dvc.lock":{frameworks:["DVC"],slots:{framework:"DVC"},priority:20,intelligence:"medium"},"wrangler.toml":{frameworks:["Cloudflare Workers","Cloudflare"],slots:{hosting:"Cloudflare Workers",backend:"Cloudflare Workers",runtime:"V8 Isolates"},priority:30,intelligence:"high"},"deno.json":{frameworks:["Deno"],slots:{runtime:"Deno",mainLanguage:"TypeScript",packageManager:"Deno"},priority:30,intelligence:"high"},"bun.lockb":{frameworks:["Bun"],slots:{runtime:"Bun",packageManager:"Bun",mainLanguage:"TypeScript/JavaScript"},priority:30,intelligence:"high"},"codecov.yml":{frameworks:["Codecov"],slots:{cicd:"Codecov"},priority:25,intelligence:"high"},"dependabot.yml":{frameworks:["Dependabot","GitHub"],slots:{cicd:"Dependabot"},priority:25,intelligence:"high"},"renovate.json":{frameworks:["Renovate"],slots:{cicd:"Renovate"},priority:25,intelligence:"high"},Makefile:{frameworks:["Make","GNU Make"],slots:{buildTool:"Make"},priority:30,intelligence:"high"},"CMakeLists.txt":{frameworks:["CMake","C","C++"],slots:{buildTool:"CMake",mainLanguage:"C/C++"},priority:30,intelligence:"high"},"meson.build":{frameworks:["Meson","C","C++"],slots:{buildTool:"Meson",mainLanguage:"C/C++"},priority:30,intelligence:"high"},"*.c":{frameworks:["C"],slots:{mainLanguage:"C"},priority:30,intelligence:"high"},"*.cpp":{frameworks:["C++"],slots:{mainLanguage:"C++"},priority:30,intelligence:"high"},"*.cc":{frameworks:["C++"],slots:{mainLanguage:"C++"},priority:30,intelligence:"high"},"*.cxx":{frameworks:["C++"],slots:{mainLanguage:"C++"},priority:25,intelligence:"high"},"*.h":{frameworks:["C","C++"],slots:{mainLanguage:"C/C++"},priority:25,intelligence:"high"},"*.hpp":{frameworks:["C++"],slots:{mainLanguage:"C++"},priority:25,intelligence:"high"},"*.hxx":{frameworks:["C++"],slots:{mainLanguage:"C++"},priority:20,intelligence:"medium"},".env":{frameworks:[],slots:{},priority:20,intelligence:"medium"},".env.example":{frameworks:[],slots:{},priority:25,intelligence:"high"},".env.local":{frameworks:[],slots:{},priority:20,intelligence:"medium"},".env.development":{frameworks:[],slots:{},priority:20,intelligence:"medium"},".env.production":{frameworks:[],slots:{},priority:20,intelligence:"medium"},"skaffold.yaml":{frameworks:["Skaffold","Kubernetes"],slots:{hosting:"Kubernetes",cicd:"Skaffold"},priority:30,intelligence:"high"},"Chart.yaml":{frameworks:["Helm","Kubernetes"],slots:{hosting:"Kubernetes",backend:"Helm"},priority:30,intelligence:"high"},"values.yaml":{frameworks:["Helm","Kubernetes"],slots:{hosting:"Kubernetes"},priority:25,intelligence:"high",confirmWith:["Chart.yaml"]},"pulumi.yaml":{frameworks:["Pulumi"],slots:{hosting:"Cloud",cicd:"Pulumi"},priority:30,intelligence:"high"},"Pulumi.yaml":{frameworks:["Pulumi"],slots:{hosting:"Cloud",cicd:"Pulumi"},priority:30,intelligence:"high"},"terragrunt.hcl":{frameworks:["Terragrunt","Terraform"],slots:{hosting:"Cloud",cicd:"Terragrunt"},priority:30,intelligence:"high"},"ansible.yml":{frameworks:["Ansible"],slots:{cicd:"Ansible"},priority:30,intelligence:"high"},"playbook.yml":{frameworks:["Ansible"],slots:{cicd:"Ansible"},priority:25,intelligence:"high"},"*.cs":{frameworks:["C#",".NET","Unity"],slots:{mainLanguage:"C#"},priority:30,intelligence:"high"},"*.m":{frameworks:["Objective-C","iOS"],slots:{mainLanguage:"Objective-C"},priority:25,intelligence:"high"},".nvmrc":{frameworks:["Node.js","nvm"],slots:{runtime:"Node.js"},priority:25,intelligence:"high"},".tool-versions":{frameworks:["asdf"],slots:{},priority:25,intelligence:"high"},".ruby-version":{frameworks:["Ruby","rbenv"],slots:{mainLanguage:"Ruby",runtime:"Ruby"},priority:25,intelligence:"high"},".python-version":{frameworks:["Python","pyenv"],slots:{mainLanguage:"Python",runtime:"Python"},priority:25,intelligence:"high"},".dockerignore":{frameworks:["Docker"],slots:{},priority:20,intelligence:"medium"},".gitattributes":{frameworks:["Git"],slots:{},priority:15,intelligence:"low"},".npmrc":{frameworks:["npm","Node.js"],slots:{packageManager:"npm"},priority:20,intelligence:"medium"},"sonar-project.properties":{frameworks:["SonarQube","SonarCloud"],slots:{cicd:"SonarQube"},priority:25,intelligence:"high"},"*.fs":{frameworks:["F#",".NET"],slots:{mainLanguage:"F#"},priority:25,intelligence:"high"},"*.mm":{frameworks:["Objective-C++","iOS","macOS"],slots:{mainLanguage:"Objective-C++"},priority:25,intelligence:"high"},"build.zig.zon":{frameworks:["Zig"],slots:{mainLanguage:"Zig",packageManager:"Zig Package Manager",buildTool:"zig build"},priority:35,intelligence:"ultra-high"},"gleam.toml":{frameworks:["Gleam","BEAM","Erlang"],slots:{mainLanguage:"Gleam",runtime:"BEAM",packageManager:"Gleam"},priority:30,intelligence:"high"},"bunfig.toml":{frameworks:["Bun"],slots:{runtime:"Bun",packageManager:"Bun",buildTool:"Bun"},priority:30,intelligence:"high"},"mise.toml":{frameworks:["mise"],slots:{},priority:25,intelligence:"high"},".mise.toml":{frameworks:["mise"],slots:{},priority:25,intelligence:"high"},"manifest.toml":{frameworks:["Flox","Nix"],slots:{},priority:25,intelligence:"high",confirmWith:[".flox"]},justfile:{frameworks:["Just"],slots:{buildTool:"Just"},priority:25,intelligence:"high"},".pre-commit-config.yaml":{frameworks:["pre-commit"],slots:{cicd:"pre-commit"},priority:25,intelligence:"high"},"CLAUDE.md":{frameworks:["Claude Code"],slots:{},priority:30,intelligence:"high",confirmWith:[".claude"]}};var FJ=new Set(["node_modules",".git","dist","build","venv",".venv","__pycache__","target","coverage",".next",".svelte-kit","vendor"]),KJ=new Set([".py",".ts",".tsx",".js",".jsx",".svelte",".vue",".rb",".go",".rs",".php",".java",".kt",".swift"]),AJ={mainLanguage:["project","main_language"],main_language:["project","main_language"],framework:["stack","frontend"],cssFramework:["stack","css_framework"],css:["stack","css_framework"],uiLibrary:["stack","ui_library"],ui_library:["stack","ui_library"],stateManagement:["stack","state_management"],state:["stack","state_management"],backend:["stack","backend"],apiType:["stack","api_type"],api:["stack","api_type"],runtime:["stack","runtime"],database:["stack","database"],db:["stack","database"],connection:["stack","connection"],hosting:["stack","hosting"],buildTool:["stack","build"],build_tool:["stack","build"],build:["stack","build"],packageManager:["stack","package_manager"],pkg_manager:["stack","package_manager"],cicd:["stack","cicd"]},NJ=[["packageManager","package-manager"],["pkg_manager","package-manager"],["mainLanguage","language"],["main_language","language"],["framework","framework"],["backend","backend"],["database","database"],["db","database"],["cicd","ci-cd"],["hosting","hosting"],["buildTool","build"],["build_tool","build"],["build","build"],["runtime","runtime"],["cssFramework","css"],["css","css"],["uiLibrary","ui-library"],["stateManagement","state-management"],["apiType","api"],["api","api"]];function wJ($,Z){for(let[U,z]of NJ)if(U in $)return z;return Z.length>0?"framework":"config"}function bJ($){try{let Z=JSON.parse(RJ($,"utf-8")),U=["background","content_scripts","action","browser_action","permissions"].some((z)=>(z in Z));if(typeof Z.manifest_version==="number"&&U)return"chrome";return"other"}catch{return"other"}}function CJ($){let Z=[],U=PJ($),z=IJ(w9($,".git"));for(let X=0;X<10;X++){let Q;try{Q=D8(U)}catch{break}for(let q of Q){let H=N9[q];if(!H)continue;if(q==="manifest.json"&&bJ(w9(U,q))!=="chrome")continue;Z.push({slots:H.slots||{},priority:H.priority,frameworks:H.frameworks,fileName:q})}if(z&&X===0)break;let J=MJ(U);if(J===U)break;U=J}return Z}function jJ($){let Z=[];for(let U of O8($,2,{count:0})){let z=N9[`*${U}`],X=z?.slots?.mainLanguage;if(X)Z.push({slots:{mainLanguage:X},priority:z.priority,frameworks:z.frameworks})}return Z}function L8($){let Z=[...CJ($),...jJ($)],U={},z={},X=new Set;for(let G of Z){G.frameworks.forEach((W)=>X.add(W));for(let[W,Y]of Object.entries(G.slots))if(Y&&!Y.includes("/")&&(!(W in U)||G.priority>z[W]))U[W]=Y,z[W]=G.priority}let Q=new Map;for(let G of Z){if(!G.fileName)continue;if(!Q.has(G.fileName))Q.set(G.fileName,{fileName:G.fileName,category:wJ(G.slots,G.frameworks),priority:G.priority})}let J=[...Q.values()].sort((G,W)=>W.priority-G.priority||G.fileName.localeCompare(W.fileName)),q=[];if(U.mainLanguage)q.push(U.mainLanguage.toLowerCase());if(U.framework)q.push(U.framework.toLowerCase());let H=q.length>0?q.join("-"):"unknown-stack";return{slotFills:U,frameworks:[...X],confirmedCount:Z.length,discoveredFormats:J,stackSignature:H}}function b9($){let{slotFills:Z}=L8($),U={};for(let[z,X]of Object.entries(Z)){let Q=AJ[z];if(!Q||!X)continue;let[J,q]=Q;if(J==="project")(U.project??={})[q]=X;else(U.stack??={})[q]=X}return U}function O8($,Z,U){let z=new Set;if(Z<0||U.count>400)return z;let X;try{X=D8($,{withFileTypes:!0})}catch{return z}for(let Q of X){if(U.count++>400)break;if(!Q.isDirectory()){let J=TJ(Q.name);if(KJ.has(J))z.add(J);continue}if(FJ.has(Q.name)||Q.name.startsWith("."))continue;for(let J of O8(w9($,Q.name),Z-1,U))z.add(J)}return z}import{existsSync as _8,readFileSync as I8}from"fs";import{join as R8}from"path";function C9($){let Z=SJ($),U=EJ($),z={},X=(Q,J)=>{if(J)z[Q]=J};return X("what",gJ(Z,U)),X("who",yJ(U)),X("why",fJ(U)),X("where",xJ(Z,U)),X("when",hJ(U)),X("how",uJ(Z,U)),z}function SJ($){let Z=R8($,"package.json");if(!_8(Z))return null;try{return JSON.parse(I8(Z,"utf-8"))}catch{return null}}function EJ($){let Z=R8($,"README.md");if(!_8(Z))return"";let U;try{U=I8(Z,"utf-8")}catch{return""}return U.split(`
214
- `).filter((z)=>!/^\s*\[!\[/.test(z)&&!/^\s*!\[/.test(z)).join(`
215
- `).replace(/<[^>]+>/g,"").replace(/!\[[^\]]*\]\([^)]*\)/g,"").trim()}function W0($){return $.replace(/\s+/g," ").replace(/[#*`>]/g,"").trim().slice(0,280)}function S0($,Z){let U=new RegExp(`##?\\s+(?:${Z})\\s*\\n+([\\s\\S]+?)(?:\\n\\n|\\n##?|$)`,"i"),z=$.match(U);return z&&z[1]&&z[1].trim().length>20?W0(z[1]):null}function Y$($,Z,U=30){for(let z of Z){let X=$.match(z);if(X&&X[1]&&X[1].trim().length>=U)return W0(X[1])}return null}function gJ($,Z){if($?.description&&$.description.length>20)return W0($.description);let U=S0(Z,"Purpose|What|About|Overview|Description");if(U)return U;let z=Z.split(/\n\s*\n/).map((X)=>X.trim()).find((X)=>X.length>30&&!X.startsWith("#"));if(z)return W0(z);return Y$(Z,[/(?:core|main|primary)\s+(?:problem|challenge)(?:\s+is)?\s*:?\s*([^.\n]{30,})/i,/solves?\s+(?:the\s+)?(?:problem\s+of\s+)?([^.\n]{30,})/i])}function yJ($){let Z=S0($,"Audience|Who|Who is this for|Who it.s for");if(Z)return Z;return Y$($,[/\b(?:designed|built|made)\s+for\s+((?:developers?|teams?|engineers?|builders?|founders?)[^.\n]{0,80})/i,/\bfor\s+((?:developers?|teams?|engineers?|builders?|founders?)[^.\n]{0,80})/i],8)}function fJ($){let Z=S0($,"Why|Mission|Motivation|Rationale|Vision");if(Z)return Z;return Y$($,[/(?:our\s+)?(?:mission|purpose|goal)(?:\s+is)?\s*:?\s*([^.\n]{30,})/i,/(?:built|created|designed)\s+(?:because|to)\s+([^.\n]{30,})/i])}function xJ($,Z){let U=typeof $?.repository==="string"?$.repository:$?.repository?.url;if(U)return W0(U.replace(/^git\+/,"").replace(/\.git$/,""));if($?.homepage)return W0($.homepage);return Y$(Z,[/\b(?:deployed|hosted|available|published)\s+(?:on|at|via)\s+([^.\n]{4,80})/i],4)}function hJ($){let Z=S0($,"Timeline|Status|Release|Roadmap");if(Z)return Z;return Y$($,[/\b(production\s+since\s+[^.\n]{4,60})/i,/\b((?:in\s+)?(?:production|beta|alpha|development)\s+since\s+[^.\n]{4,60})/i,/\bsince\s+((?:[A-Z][a-z]+\s+)?\d{4}[^.\n]{0,40})/],4)}function uJ($,Z){let U=$?.scripts?Object.keys($.scripts):[],z=["start","dev","build"].filter((Q)=>U.includes(Q));if(z.length)return W0(z.map((Q)=>`npm run ${Q}`).join(", "));let X=S0(Z,"Usage|Getting Started|Install|Installation|Quick Start");if(X)return X;return S0(Z,"Architecture|Approach|How it works|Methodology|How")}import{existsSync as M,readFileSync as r,readdirSync as T8}from"fs";import{join as I}from"path";var M8=[{name:"Next.js",slug:"nextjs",category:"frontend",signals:[{type:"dependency",key:"next"},{type:"file",pattern:"next.config.*"}]},{name:"React",slug:"react",category:"frontend",signals:[{type:"dependency",key:"react"}]},{name:"SvelteKit",slug:"sveltekit",category:"frontend",signals:[{type:"dependency",key:"@sveltejs/kit"},{type:"file",pattern:"svelte.config.*"}]},{name:"Svelte",slug:"svelte",category:"frontend",signals:[{type:"dependency",key:"svelte"},{type:"devDependency",key:"svelte"}]},{name:"Vue.js",slug:"vue",category:"frontend",signals:[{type:"dependency",key:"vue"}]},{name:"Nuxt",slug:"nuxt",category:"frontend",signals:[{type:"dependency",key:"nuxt"},{type:"file",pattern:"nuxt.config.*"}]},{name:"Angular",slug:"angular",category:"frontend",signals:[{type:"dependency",key:"@angular/core"},{type:"file",pattern:"angular.json"}]},{name:"Astro",slug:"astro",category:"frontend",signals:[{type:"dependency",key:"astro"},{type:"file",pattern:"astro.config.*"}]},{name:"Solid",slug:"solid",category:"frontend",signals:[{type:"dependency",key:"solid-js"}]},{name:"Remix",slug:"remix",category:"frontend",signals:[{type:"dependency",key:"@remix-run/react"}]},{name:"Gatsby",slug:"gatsby",category:"frontend",signals:[{type:"dependency",key:"gatsby"},{type:"file",pattern:"gatsby-config.*"}]},{name:"Qwik",slug:"qwik",category:"frontend",signals:[{type:"dependency",key:"@builder.io/qwik"}]},{name:"Vercel (SvelteKit)",slug:"adapter-vercel",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-vercel"},{type:"devDependency",key:"@sveltejs/adapter-vercel"}]},{name:"Node (SvelteKit)",slug:"adapter-node",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-node"},{type:"devDependency",key:"@sveltejs/adapter-node"}]},{name:"Static (SvelteKit)",slug:"adapter-static",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-static"},{type:"devDependency",key:"@sveltejs/adapter-static"}]},{name:"Cloudflare (SvelteKit)",slug:"adapter-cloudflare",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-cloudflare"},{type:"devDependency",key:"@sveltejs/adapter-cloudflare"}]},{name:"Netlify (SvelteKit)",slug:"adapter-netlify",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-netlify"},{type:"devDependency",key:"@sveltejs/adapter-netlify"}]},{name:"Tailwind CSS",slug:"tailwind",category:"css",signals:[{type:"dependency",key:"tailwindcss"},{type:"devDependency",key:"tailwindcss"},{type:"file",pattern:"tailwind.config.*"}]},{name:"Bootstrap",slug:"bootstrap",category:"css",signals:[{type:"dependency",key:"bootstrap"}]},{name:"Styled Components",slug:"styled-components",category:"css",signals:[{type:"dependency",key:"styled-components"}]},{name:"shadcn/ui",slug:"shadcn",category:"ui",signals:[{type:"file",pattern:"components.json"},{type:"dependency",key:"@radix-ui/react-dialog"}]},{name:"Material UI",slug:"mui",category:"ui",signals:[{type:"dependency",key:"@mui/material"}]},{name:"Chakra UI",slug:"chakra",category:"ui",signals:[{type:"dependency",key:"@chakra-ui/react"}]},{name:"Ant Design",slug:"antd",category:"ui",signals:[{type:"dependency",key:"antd"}]},{name:"Redux",slug:"redux",category:"state",signals:[{type:"dependency",key:"@reduxjs/toolkit"}]},{name:"Zustand",slug:"zustand",category:"state",signals:[{type:"dependency",key:"zustand"}]},{name:"Jotai",slug:"jotai",category:"state",signals:[{type:"dependency",key:"jotai"}]},{name:"Pinia",slug:"pinia",category:"state",signals:[{type:"dependency",key:"pinia"}]},{name:"Express",slug:"express",category:"backend",signals:[{type:"dependency",key:"express"}]},{name:"Fastify",slug:"fastify",category:"backend",signals:[{type:"dependency",key:"fastify"}]},{name:"Hono",slug:"hono",category:"backend",signals:[{type:"dependency",key:"hono"}]},{name:"Elysia",slug:"elysia",category:"backend",signals:[{type:"dependency",key:"elysia"}]},{name:"NestJS",slug:"nestjs",category:"backend",signals:[{type:"dependency",key:"@nestjs/core"}]},{name:"Koa",slug:"koa",category:"backend",signals:[{type:"dependency",key:"koa"}]},{name:"Django",slug:"django",category:"backend",signals:[{type:"file",pattern:"manage.py"},{type:"file",pattern:"settings.py"}]},{name:"Flask",slug:"flask",category:"backend",signals:[{type:"file",pattern:"app.py"}]},{name:"FastAPI",slug:"fastapi",category:"backend",signals:[{type:"file",pattern:"main.py"}]},{name:"Rails",slug:"rails",category:"backend",signals:[{type:"file",pattern:"Gemfile"},{type:"file",pattern:"config/routes.rb"}]},{name:"Spring Boot",slug:"spring",category:"backend",signals:[{type:"file",pattern:"pom.xml"},{type:"file",pattern:"build.gradle"}]},{name:"Prisma",slug:"prisma",category:"database",signals:[{type:"dependency",key:"prisma"},{type:"devDependency",key:"prisma"},{type:"file",pattern:"prisma/schema.prisma"}]},{name:"Drizzle",slug:"drizzle",category:"database",signals:[{type:"dependency",key:"drizzle-orm"},{type:"file",pattern:"drizzle.config.*"}]},{name:"TypeORM",slug:"typeorm",category:"database",signals:[{type:"dependency",key:"typeorm"}]},{name:"Mongoose",slug:"mongoose",category:"database",signals:[{type:"dependency",key:"mongoose"}]},{name:"Vite",slug:"vite",category:"build",signals:[{type:"dependency",key:"vite"},{type:"devDependency",key:"vite"},{type:"file",pattern:"vite.config.*"}]},{name:"webpack",slug:"webpack",category:"build",signals:[{type:"dependency",key:"webpack"},{type:"devDependency",key:"webpack"},{type:"file",pattern:"webpack.config.*"}]},{name:"esbuild",slug:"esbuild",category:"build",signals:[{type:"dependency",key:"esbuild"},{type:"devDependency",key:"esbuild"}]},{name:"Turbopack",slug:"turbopack",category:"build",signals:[{type:"file",pattern:"turbo.json"}]},{name:"Jest",slug:"jest",category:"testing",signals:[{type:"devDependency",key:"jest"},{type:"file",pattern:"jest.config.*"}]},{name:"Vitest",slug:"vitest",category:"testing",signals:[{type:"devDependency",key:"vitest"}]},{name:"Playwright",slug:"playwright",category:"testing",signals:[{type:"devDependency",key:"@playwright/test"},{type:"file",pattern:"playwright.config.*"}]},{name:"Cypress",slug:"cypress",category:"testing",signals:[{type:"devDependency",key:"cypress"},{type:"file",pattern:"cypress.config.*"}]},{name:"Turborepo",slug:"turborepo",category:"monorepo",signals:[{type:"devDependency",key:"turbo"},{type:"file",pattern:"turbo.json"}]},{name:"Nx",slug:"nx",category:"monorepo",signals:[{type:"devDependency",key:"nx"},{type:"file",pattern:"nx.json"}]},{name:"Lerna",slug:"lerna",category:"monorepo",signals:[{type:"devDependency",key:"lerna"},{type:"file",pattern:"lerna.json"}]},{name:"MCP SDK",slug:"mcp",category:"ai",signals:[{type:"dependency",key:"@modelcontextprotocol/sdk"}]},{name:"Anthropic SDK",slug:"anthropic",category:"ai",signals:[{type:"dependency",key:"@anthropic-ai/sdk"}]},{name:"OpenAI SDK",slug:"openai",category:"ai",signals:[{type:"dependency",key:"openai"}]},{name:"LangChain",slug:"langchain",category:"ai",signals:[{type:"dependency",key:"langchain"}]},{name:"Vercel",slug:"vercel",category:"hosting",signals:[{type:"file",pattern:"vercel.json"}]},{name:"Netlify",slug:"netlify",category:"hosting",signals:[{type:"file",pattern:"netlify.toml"}]},{name:"Docker",slug:"docker",category:"hosting",signals:[{type:"file",pattern:"Dockerfile"},{type:"file",pattern:"docker-compose.yml"}]},{name:"Cloudflare Workers",slug:"cloudflare",category:"hosting",signals:[{type:"file",pattern:"wrangler.toml"},{type:"dependency",key:"wrangler"}]},{name:"GitHub Actions",slug:"github-actions",category:"cicd",signals:[{type:"file",pattern:".github/workflows/*.yml"}]},{name:"Commander.js",slug:"commander",category:"cli",signals:[{type:"dependency",key:"commander"}]}];function kJ($){let Z=I($,"Cargo.toml");if(!M(Z))return null;try{let z=r(Z,"utf-8").match(/^\s*\[package\][\s\S]*?^\s*name\s*=\s*"([^"]+)"/m);return z?z[1]:null}catch{return null}}function vJ($){let Z=I($,"Cargo.toml");if(!M(Z))return!1;try{let U=r(Z,"utf-8");return/^\s*\[\[bin\]\]/m.test(U)}catch{return!1}}function mJ($,Z){if(Z?.keywords?.some((z)=>/^sdk(?:\s|-|$)|\-sdk$/i.test(z)))return'package.json keywords contains "sdk"';if(Z?.name&&/(?:^|[-_/])sdk(?:[-_/]|$)/i.test(Z.name))return`package.json name "${Z.name}" → sdk`;let U=kJ($);if(U&&/(?:^|[-_])sdk(?:[-_]|$)/i.test(U))return`Cargo.toml name "${U}" → sdk`;return null}function pJ($){let Z=["manifest.json","public/manifest.json","src/manifest.json","app/manifest.json","extension/manifest.json","dist/manifest.json"];for(let U of Z){let z=I($,U);if(!M(z))continue;try{let X=JSON.parse(r(z,"utf-8"));if(typeof X.manifest_version==="number")return`${U} manifest_version ${X.manifest_version} (browser extension)`}catch{}}return null}function lJ($){let Z=/(numpy|pandas|jupyter|scikit-learn|sklearn|pytorch|tensorflow|matplotlib|scipy)/i,U=I($,"pyproject.toml");if(M(U))try{let Q=r(U,"utf-8").match(Z);if(Q)return`pyproject.toml depends on ${Q[1]}`}catch{}let z=I($,"requirements.txt");if(M(z))try{let Q=r(z,"utf-8").match(Z);if(Q)return`requirements.txt contains ${Q[1]}`}catch{}return null}function dJ($,Z){let U=["react-native","expo","@capacitor/core","@ionic/core"];if(Z){for(let z of U)if(Z.dependencies?.[z]||Z.devDependencies?.[z])return`${z} dependency`}if(M(I($,"pubspec.yaml")))return"pubspec.yaml (Flutter)";if(M(I($,"ios"))&&M(I($,"android")))return"ios/ + android/ dirs";return null}function cJ($,Z){let U=I($,"Cargo.toml");if(M(U))try{let X=r(U,"utf-8");if(/crate-type\s*=\s*\[[^\]]*"cdylib"/.test(X))return'Cargo.toml crate-type = ["cdylib"]';if(/wasm-bindgen|wasm-pack/i.test(X))return"Cargo.toml wasm-bindgen/wasm-pack"}catch{}let z=I($,"build.zig");if(M(z))try{let X=r(z,"utf-8");if(/\.wasm\b|wasm32|setOutputFormat\(\.wasm/i.test(X))return"build.zig wasm target"}catch{}if(Z?.keywords?.some((X)=>/^wasm(?:-|$)|webassembly/i.test(X)))return'package.json keywords contains "wasm"';return null}function aJ($,Z){if(!M(I($,"index.html")))return null;if(Z?.dependencies||Z?.devDependencies){let U={...Z.dependencies??{},...Z.devDependencies??{}};if(["react","vue","svelte","@sveltejs/kit","next","nuxt","astro","gatsby","solid-js","qwik"].some((X)=>U[X]))return null}return"index.html (vanilla, no frontend framework)"}function sJ($,Z){if(Z?.name&&/specification|^@.*\/spec/i.test(Z.name))return`package name "${Z.name}" → documentation`;if(Z?.keywords?.some((U)=>/^(specification|format-spec|standard)$/i.test(U)))return'package keywords contains "specification"';if(Z?.files&&Z.files.length>0){let U=/^(dist|src|lib|build|bin)\/|\.(js|ts|tsx|jsx|mjs|cjs|py|rs|go)$/,z=Z.files.some((Q)=>U.test(Q)),X=Z.files.some((Q)=>/\.(md|MD)|examples?\//.test(Q));if(!z&&X)return"package.json files = docs/examples only (no source)"}return null}function iJ($,Z,U){let z=U.find((X)=>X.slug==="astro"||X.slug==="gatsby");if(z)return`${z.name} (static-site framework)`;if(Z?.keywords?.some((X)=>/^(website|marketing|landing|brochure|portfolio)$/i.test(X)))return'package keywords contains "website"/"marketing"/"landing"';return null}function rJ($,Z){if(!Z)return null;let U={...Z.dependencies??{},...Z.devDependencies??{}},z=["@clerk/nextjs","@clerk/clerk-react","next-auth","@auth/core","auth0","@auth0/nextjs-auth0"],X=["stripe","@stripe/stripe-js","lemonsqueezy"],Q=z.some((q)=>U[q]),J=X.some((q)=>U[q]);if(Q&&J)return"auth + payment dependencies";return null}function nJ($,Z,U){if(Z?.keywords?.some((Q)=>/mcpaas/i.test(Q)))return'package keywords contains "mcpaas"';if(Z?.name&&/mcpaas/i.test(Z.name))return`package name "${Z.name}" → mcpaas`;let z=U.some((Q)=>Q.slug==="mcp"),X=U.some((Q)=>Q.category==="database");if(z&&X&&Z?.dependencies&&Object.keys(Z.dependencies).length>10)return"MCP + database + complex deps (platform shape)";return null}function oJ($,Z){if(!Z?.private)return null;if(!(!!Z.workspaces||M(I($,"pnpm-workspace.yaml"))))return null;return"private workspace + multi-package"}function D0($){let Z=I($,"package.json");if(!M(Z))return null;try{return JSON.parse(r(Z,"utf-8"))}catch{return null}}function tJ($,Z){if(!Z.includes("*"))return M(I($,Z));let U=Z.split("/");if(U.length===1){let q=Z.split("*")[0];try{return T8($).some((H)=>H.startsWith(q))}catch{return!1}}let z=I($,...U.slice(0,-1)),X=U[U.length-1],Q=X.split("*")[0],J=X.split("*")[1]||"";try{return T8(z).some((q)=>q.startsWith(Q)&&q.endsWith(J))}catch{return!1}}function eJ($,Z,U){switch($.type){case"dependency":return!!Z?.dependencies?.[$.key];case"devDependency":return!!Z?.devDependencies?.[$.key];case"file":return tJ(U,$.pattern);default:return!1}}function j9($){let Z=D0($);return M8.map((U)=>{let X=U.signals.filter((Q)=>eJ(Q,Z,$)).length/U.signals.length;return{name:U.name,slug:U.slug,category:U.category,confidence:X}}).filter((U)=>U.confidence>0).sort((U,z)=>z.confidence-U.confidence)}function P8($){let Z=D0($);if(Z?.devDependencies?.typescript||Z?.dependencies?.typescript)return"TypeScript";if(M(I($,"tsconfig.json")))return"TypeScript";if(M(I($,"Cargo.toml")))return"Rust";if(M(I($,"go.mod")))return"Go";if(M(I($,"pyproject.toml"))||M(I($,"setup.py")))return"Python";if(M(I($,"Gemfile")))return"Ruby";if(M(I($,"pom.xml"))||M(I($,"build.gradle")))return"Java";if(M(I($,"Package.swift")))return"Swift";if(M(I($,"build.zig")))return"Zig";if(Z)return"JavaScript";return"Unknown"}function F8($){let Z=D0($),U=j9($),z=[],X=sJ($,Z);if(X)return z.push(X),{type:"documentation",found:z};let Q=mJ($,Z);if(Q)return z.push(Q),{type:"sdk",found:z};let J=pJ($);if(J)return z.push(J),{type:"extension",found:z};let q=nJ($,Z,U);if(q)return z.push(q),{type:"mcpaas",found:z};let H=rJ($,Z);if(H)return z.push(H),{type:"saas",found:z};let G=cJ($,Z);if(G)return z.push(G),{type:"wasm",found:z};let W=dJ($,Z);if(W)return z.push(W),{type:"mobile",found:z};if(U.some((w)=>w.slug==="mcp"))return z.push("MCP SDK signal"),{type:"mcp",found:z};if(Z?.bin)return z.push("package.json bin"),{type:"cli",found:z};if(vJ($))return z.push("Cargo.toml [[bin]]"),{type:"cli",found:z};if(M(I($,"build.zig"))){if(z.push("build.zig"),M(I($,"src/main.zig")))return z.push("src/main.zig"),{type:"cli",found:z};if(M(I($,"src/root.zig")))return z.push("src/root.zig"),{type:"library",found:z}}let B=U.some((w)=>w.slug==="svelte"||w.slug==="sveltekit");if(Z?.private===!0&&(M(I($,"pnpm-workspace.yaml"))||Z?.workspaces!==void 0)&&B)return z.push("private workspace","Svelte"),{type:"framework",found:z};if(B)return z.push("Svelte/SvelteKit"),{type:"svelte",found:z};let O=U.some((w)=>w.category==="frontend"),V=U.some((w)=>w.category==="backend");if(Z?.private&&(Z.workspaces||M(I($,"pnpm-workspace.yaml")))&&O&&V)return z.push("private workspace + frontend + backend frameworks"),{type:"enterprise",found:z};let D=oJ($,Z);if(D)return z.push(D),{type:"monorepo-root",found:z};let R=iJ($,Z,U);if(R)return z.push(R),{type:"website",found:z};if(U.some((w)=>w.slug==="nextjs"||w.slug==="nuxt"))return z.push(U.find((w)=>w.slug==="nextjs")?"Next.js":"Nuxt"),{type:"fullstack",found:z};let K=U.some((w)=>w.category==="frontend"),A=U.some((w)=>w.category==="backend");if(K&&A)return z.push("frontend framework","backend framework"),{type:"fullstack",found:z};if(K)return z.push("frontend framework"),{type:"frontend",found:z};if(A)return z.push("backend framework"),{type:"backend",found:z};let F=lJ($);if(F)return z.push(F),{type:"data-science",found:z};let N=aJ($,Z);if(N)return z.push(N),{type:"html",found:z};if(Z?.main&&!Z?.bin)return z.push("package.json main (no bin)"),{type:"library",found:z};return z.push("no classifying signals — fallback"),{type:"library",found:z}}function K8($){if(M(I($,"bunfig.toml")))return"Bun";if(M(I($,"deno.json"))||M(I($,"deno.jsonc")))return"Deno";if(D0($))return"Node.js";if(M(I($,"Cargo.toml")))return"Rust";if(M(I($,"go.mod")))return"Go";return"Unknown"}function A8($){if(M(I($,"bun.lockb"))||M(I($,"bun.lock")))return"bun";if(M(I($,"pnpm-lock.yaml")))return"pnpm";if(M(I($,"yarn.lock")))return"yarn";if(M(I($,"package-lock.json")))return"npm";return"npm"}function N8($){if(M(I($,".github/workflows")))return"GitHub Actions";if(M(I($,".gitlab-ci.yml")))return"GitLab CI";if(M(I($,".circleci")))return"CircleCI";if(M(I($,"Jenkinsfile")))return"Jenkins";return null}function w8($){if(M(I($,"vercel.json")))return"Vercel";if(M(I($,"netlify.toml")))return"Netlify";if(M(I($,"wrangler.toml")))return"Cloudflare";if(M(I($,"Dockerfile")))return"Docker";if(M(I($,"fly.toml")))return"Fly.io";if(M(I($,"render.yaml")))return"Render";return null}function b8($){let Z=I($,"svelte.config.js");if(!M(Z))return null;try{let z=r(Z,"utf-8").match(/@sveltejs\/adapter-(\w+)/);if(z){let X=z[1];switch(X){case"vercel":return"Vercel";case"node":return"Node";case"static":return"Static";case"cloudflare":return"Cloudflare";case"netlify":return"Netlify";case"auto":return"Auto";default:return X}}return null}catch{return null}}function C8($){let Z=D0($);if(Z?.devDependencies?.vite||Z?.dependencies?.vite)return"Vite";if(Z?.devDependencies?.webpack||Z?.dependencies?.webpack)return"webpack";if(Z?.devDependencies?.esbuild||Z?.dependencies?.esbuild)return"esbuild";if(M(I($,"tsconfig.json"))&&Z?.devDependencies?.typescript)return"TypeScript (tsc)";return null}function j8($){return["package.json","Cargo.toml","pyproject.toml","go.mod","build.zig","build.zig.zon","src/index.ts","src/index.js","src/main.ts","src/cli.ts","src/main.rs","src/lib.rs","src/main.zig","src/root.zig","src/__init__.py","main.py","__main__.py","main.go","cmd/main.go","README.md","SPECIFICATION.md","BINARY-FORMAT.md","tsconfig.json","wrangler.toml","vercel.json"].filter((U)=>M(I($,U)))}function S8($,Z){let U={};if(Z?.scripts){for(let z of["build","test","lint","dev","start"])if(Z.scripts[z]){let X=M(I($,"bun.lock"))||M(I($,"bun.lockb"))?"bun run":"npm run";U[z]=`${X} ${z}`}}if(M(I($,"Cargo.toml"))){if(!U.build)U.build="cargo build --release";if(!U.test)U.test="cargo test";if(!U.lint)U.lint="cargo clippy"}if(M(I($,"build.zig"))){if(!U.build)U.build="zig build";if(!U.test)U.test="zig build test"}if(M(I($,"go.mod"))){if(!U.build)U.build="go build ./...";if(!U.test)U.test="go test ./..."}if(M(I($,"pyproject.toml"))||M(I($,"pytest.ini"))){if(!U.test)U.test="pytest"}return U}function E8($,Z,U,z){let X=[];if(z&&z!=="Unknown")X.push(z);let Q=new Set(["frontend","backend","database","build","css","state","monorepo"]);for(let J of U)if(Q.has(J.category))X.push(J.name);if(M(I($,"bunfig.toml")))X.push("Bun");else if(M(I($,"deno.json"))||M(I($,"deno.jsonc")))X.push("Deno");if(X.length<3&&Z?.dependencies){let J=Object.keys(Z.dependencies).slice(0,5);for(let q of J)if(!X.some((H)=>H.toLowerCase().includes(q.toLowerCase())))X.push(q)}return X}function g8($){let Z=D0($),U=j9($),z=P8($),X=F8($),Q=X.type,J=K8($),q=A8($),H=N8($),G=w8($),W=C8($),Y=U.find((j)=>j.category==="frontend"),B=U.find((j)=>j.category==="css"),L=U.find((j)=>j.category==="ui"),O=U.find((j)=>j.category==="state"),V=U.find((j)=>j.category==="backend"),D=U.find((j)=>j.category==="database"),R=O0[Q]||O0.library,P=Q==="framework",K=U.some((j)=>j.slug==="svelte"||j.slug==="sveltekit"),A=P&&K?"svelte":P?null:null,F=Q==="svelte"||A==="svelte",N=F?b8($):null,w=F&&U.some((j)=>j.slug==="sveltekit"),T=new Set(["css_framework","ui_library","database","connection","hosting"]),b={},p=f.filter((j)=>j.path.startsWith("stack."));for(let j of p){let S=j.path.replace("stack.","");if(!R.includes(j.category)){b[S]="slotignored";continue}if(P&&T.has(S)){b[S]="slotignored";continue}switch(S){case"frontend":b[S]=Y?.name??(Q==="cli"?"CLI":"");break;case"css_framework":b[S]=B?.name??"";break;case"ui_library":b[S]=L?.name??"";break;case"state_management":b[S]=F?O?.name??"Runes":O?.name??"";break;case"backend":b[S]=F?w?"SvelteKit":V?.name??"":V?.name??"";break;case"api_type":b[S]=w?"Server Routes":"";break;case"runtime":b[S]=J!=="Unknown"?J:"";break;case"database":b[S]=D?.name??"";break;case"connection":b[S]=D?.name??"";break;case"hosting":if(F&&N)b[S]=N;else b[S]=G??"";break;case"build":b[S]=F?"Vite":W??"";break;case"cicd":b[S]=H??"";break;case"package_manager":b[S]=q;break;default:b[S]="";break}}let l={},E=f.filter((j)=>j.path.startsWith("monorepo."));for(let j of E){let S=j.path.replace("monorepo.","");if(!R.includes(j.category))l[S]="slotignored";else l[S]=""}let E0={name:Z?.name??$.split("/").pop()??"project",goal:Z?.description??"",main_language:z,type:Q};if(P&&A)E0.framework=A;let g9=E8($,Z,U,z),y9=j8($),f9=S8($,Z),B$={faf_version:"2.5.0",project:E0,stack:b,human_context:{who:"",what:Z?.description??"",why:"",where:"",when:"",how:""},monorepo:l,_meta:{found:X.found}};if(g9.length>0)B$.tech_stack=g9;if(y9.length>0)B$.key_files=y9;if(Object.keys(f9).length>0)B$.commands=f9;return B$}import{existsSync as Zq,readFileSync as Uq}from"fs";import{join as zq}from"path";var y8={MIN_LENGTH:8,MAX_LENGTH:280},$q=[/^(see|see\s+the?)\s+readme/i,/^(tbd|todo|fixme|coming\s+soon)\b/i,/^(software|application|app|project|tool|library|framework)\.?$/i,/^(for\s+users|for\s+developers)\.?$/i,/^(description|goal|name|title)\.?$/i,/^lorem\s+ipsum/i,/^example(\s+\w+)?\.?$/i];function m($){let Z=$.trim();if(Z.length<y8.MIN_LENGTH)return!1;if(Z.length>y8.MAX_LENGTH)return!1;if($q.some((U)=>U.test(Z)))return!1;if(/^[\s|\-*+]/.test(Z))return!1;if(Z.split(`
216
- `).length>4)return!1;return!0}function Xq($){let Z=$.split(`
217
- `),U=0;while(U<Z.length&&/^(#\s|$)/.test(Z[U].trim()))U++;while(U<Z.length){let z=Z[U].trim();if(/^\[!\[/.test(z)){U++;continue}if(/^!\[/.test(z)){U++;continue}if(/^<img\s/i.test(z)){U++;continue}if(z===""){U++;continue}break}return Z.slice(U).join(`
218
- `)}function Qq($){let U=Xq($).split(`
219
- `),z=[];for(let X of U){let Q=X.trim();if(Q===""){if(z.length>0)break;continue}if(/^(#|>|```|---|\||\s*[-*+]\s|\d+\.\s)/.test(Q))break;if(/^\*\*[^*]+\*\*\s*$/.test(Q)&&z.length===0)continue;z.push(Q)}if(z.length===0)return null;return z.join(" ").trim()}function L0($,Z){let U=$.split(`
220
- `),z=0;while(z<U.length){let Q=U[z].trim().match(/^(#{1,6})\s+(.+)$/);if(Q&&Z.test(Q[2])){let J=Q[1].length,q=[];z++;while(z<U.length){let H=U[z].trim(),G=H.match(/^(#{1,6})\s+/);if(G&&G[1].length<=J)break;if(H===""){if(q.length>0)break;z++;continue}if(/^(>|```|---|\||\s*[-*+]\s|\d+\.\s)/.test(H))break;q.push(H),z++}if(q.length===0)return null;return q.join(" ").trim()}z++}return null}function Jq($){let Z=L0($,/^(use\s+cases?|goal)\b/i);if(Z&&m(Z))return Z;let U=Qq($);if(U&&m(U))return U;return}function qq($){let Z=L0($,/^(about|description|overview|what(\s+is\s+this)?)\b/i);if(Z&&m(Z))return Z;return}function Hq($){let Z=L0($,/^(audience|users?|for\s+whom|who(\s+is\s+this\s+for)?)\b/i);if(Z&&m(Z))return Z;return}function Gq($){let Z=L0($,/^(why|motivation|problem|rationale)\b/i);if(Z&&m(Z))return Z;return}function Yq($){let Z=L0($,/^(deployment|where(\s+it\s+runs)?|hosting)\b/i);if(Z&&m(Z))return Z;return}function Bq($){let Z=L0($,/^(status|history|timeline|since|launched)\b/i);if(Z&&m(Z))return Z;return}function Vq($){let Z=L0($,/^(architecture|how(\s+it\s+works)?|approach|design)\b/i);if(Z&&m(Z))return Z;return}function S9($){let Z=["README.md","README.MD","Readme.md","readme.md"],U=null;for(let L of Z){let O=zq($,L);if(Zq(O)){U=O;break}}if(!U)return{};let z;try{z=Uq(U,"utf-8")}catch{return{}}let X={},Q=Jq(z);if(Q)X.project={goal:Q};let J={},q=qq(z);if(q)J.what=q;let H=Hq(z);if(H)J.who=H;let G=Gq(z);if(G)J.why=G;let W=Yq(z);if(W)J.where=W;let Y=Bq(z);if(Y)J.when=Y;let B=Vq(z);if(B)J.how=B;if(Object.keys(J).length>0)X.human_context=J;return X}import{existsSync as Wq,readFileSync as Dq}from"fs";import{join as Lq}from"path";function Oq($,Z){let U=$.split(`
221
- `),z=!1;for(let X of U){let Q=X.trim();if(/^\[/.test(Q)){z=Q==="[package]";continue}if(!z)continue;let J=Q.match(new RegExp(`^${Z}\\s*=\\s*(.+)$`));if(J){let q=J[1].trim();q=q.replace(/\s*#.*$/,"").trim();let H=q.match(/^"((?:[^"\\]|\\.)*)"$/)||q.match(/^'((?:[^'\\]|\\.)*)'$/);if(H)return H[1];return q}}return null}function E9($){let Z=Lq($,"Cargo.toml");if(!Wq(Z))return{};let U;try{U=Dq(Z,"utf-8")}catch{return{}}let z=Oq(U,"description");if(z&&m(z))return{project:{goal:z}};return{}}function _q($,Z){let U={project:{...Z.project??{},...$.project??{}},human_context:{...Z.human_context??{},...$.human_context??{}}};if(U.project&&Object.keys(U.project).length===0)delete U.project;if(U.human_context&&Object.keys(U.human_context).length===0)delete U.human_context;return U}function f8($){return _q(S9($),E9($))}function Iq($){let Z=g8($),U=f8($),z=Q2(Z,U);Rq(z);let X=Q2(z,b9($));return Q2(X,{human_context:C9($)})}function Rq($){let Z=$.project?.type??"library",U=O0[Z]||O0.library;for(let z of f){if(U.includes(z.category))continue;let[X,Q]=z.path.split(".");if(X==="stack"&&$.stack)$.stack[Q]="slotignored";if(X==="monorepo"&&$.monorepo)$.monorepo[Q]="slotignored"}}function Q2($,Z){let U={...$};for(let[z,X]of Object.entries(Z)){let Q=U[z];if(y0(Q))U[z]=X;else if(typeof X==="object"&&X!==null&&!Array.isArray(X)&&typeof Q==="object"&&Q!==null&&!Array.isArray(Q))U[z]=Q2(Q,X)}return U}export{zJ as writeProjectHtml,t8 as validateFaf,b9 as turboCatSlots,L8 as turboCatScan,m8 as slotsByCategory,G8 as seedSixWsFromGoal,V2 as scoreFafYaml,C9 as relentlessContext,n6 as readFafRaw,iQ as readFaf,QJ as questionForSlot,LJ as publicQuestions,X2 as normalizeAnswer,B2 as kernel,y0 as isPlaceholder,JJ as interviewForMissing,OJ as gradeAnswers,h0 as getTier,d8 as getNextTier,Z8 as generateProjectHtml,o6 as findFafFile,h9 as enrichScore,DJ as deriveQuestionSet,YJ as buildTableOf8,_J as buildReceipt,Iq as assembleFreshFaf,W8 as answersMatch,a as TIERS,q8 as STACK_INTERVIEW,J2 as SLOT_BY_PATH,f as SLOTS,K9 as SIX_WS_INTERVIEW,V$ as PLACEHOLDERS,J8 as INTERVIEW_VERSION,XJ as INTERVIEW_PATHS,H8 as INTERVIEW_BY_PATH,z2 as INTERVIEW,x0 as FAF_HEX,l8 as ENTERPRISE_SLOTS,A9 as BENCH_VERSION,p8 as BASE_SLOTS,V8 as ALIAS_GROUPS};
213
+ `}function WJ($,Z,U,X="project.faf"){QJ(JJ($,"project.html"),Q6(Z,U,X),"utf-8")}import{writeFileSync as LJ}from"fs";import{join as OJ}from"path";var J6="application/vnd.faf+yaml",_J="https://static.modelcontextprotocol.io/schemas/v1/server-card.schema.json",DJ=/^[a-zA-Z0-9.-]+\/[a-zA-Z0-9._-]+$/;function H6($){let Z=String($.project?.name??"project").trim();if(Z.includes("/")&&DJ.test(Z))return Z;let U=$.project?.homepage??$.project?.website??$.project?.url,X="local";if(U)try{X=new URL(U).hostname.replace(/^www\./,"").split(".").reverse().join(".")}catch{}let z=Z.replace(/[^a-zA-Z0-9._-]/g,"-").replace(/^-+|-+$/g,"")||"project";return`${X}/${z}`}function IJ($){let Z=String($.project?.goal??$.context??$.project?.name??"MCP server").replace(/\s+/g," ").trim();if(!Z)return"MCP server";return Z.length<=100?Z:Z.slice(0,97).trimEnd()+"..."}function N2($,Z={}){return{faf:Z.fafPointer??"./project.faf",mediaType:J6,iana:`https://www.iana.org/assignments/media-types/${J6}`,deterministic:!0,...Z.scoreEndpoint?{scoreEndpoint:Z.scoreEndpoint}:{},generated:$.generated??Z.now??new Date().toISOString()}}function G6($,Z={}){let U={$schema:_J,name:H6($),version:String($.project?.version??"0.1.0"),description:IJ($)},X=$.project?.name;if(X&&X.length<=100)U.title=X;let z=$.project?.homepage??$.project?.website??$.project?.url;if(z)U.websiteUrl=z;if(Z.remoteUrl)U.remotes=[{type:"streamable-http",url:Z.remoteUrl}];return U._meta={"one.faf/context":N2($,Z)},U}var Y6="io.modelcontextprotocol.registry/publisher-provided",q6=4096;function RJ($,Z={}){let U={"one.faf/context":N2($,Z)},X=new TextEncoder().encode(JSON.stringify(U)).length;if(X>q6)throw Error(`publisher-provided _meta is ${X}B — exceeds the registry ${q6}B cap`);return{[Y6]:U}}function MJ($){return H6($)}function PJ($,Z,U={}){let X=G6(Z,U),z=OJ($,"server-card");return LJ(z,JSON.stringify(X,null,2)+`
214
+ `,"utf-8"),z}var O6="faf-interview/1",j0="(terse — 3-4 words)",w2=[{path:"project.name",question:"What is the name of this project?",header:"Name",type:"text",required:!0},{path:"project.goal",question:"What does this project do? (one sentence)",header:"Goal",type:"text",required:!0},{path:"human_context.who",question:`Who is this for? ${j0}`,header:"Who",type:"text",required:!0},{path:"human_context.what",question:`What are they building? ${j0}`,header:"What",type:"text",required:!0},{path:"human_context.why",question:`Why does it exist? ${j0}`,header:"Why",type:"text",required:!0},{path:"human_context.where",question:`Where does it run or ship? ${j0}`,header:"Where",type:"text",required:!0},{path:"human_context.when",question:`When — timeline or stage? ${j0}`,header:"When",type:"text",required:!0},{path:"human_context.how",question:`How is it built or used? ${j0}`,header:"How",type:"text",required:!0}],_6=[{path:"project.main_language",question:"What is the primary programming language?",header:"Language",type:"select",required:!0,options:[{label:"TypeScript",value:"TypeScript",description:"JavaScript with types"},{label:"JavaScript",value:"JavaScript",description:"Vanilla JS or Node.js"},{label:"Python",value:"Python",description:"Python 3.x"},{label:"Rust",value:"Rust",description:"Systems programming"},{label:"Go",value:"Go",description:"Golang"},{label:"Other",value:"Other",description:"Specify manually"}]},{path:"stack.frontend",question:"What frontend framework does it use?",header:"Frontend",type:"select",required:!1,options:[{label:"React",value:"React",description:"React.js"},{label:"Vue",value:"Vue",description:"Vue.js"},{label:"Svelte",value:"Svelte",description:"Svelte/SvelteKit"},{label:"Next.js",value:"Next.js",description:"React framework"},{label:"None",value:"None",description:"No frontend"},{label:"Other",value:"Other",description:"Specify manually"}]},{path:"stack.backend",question:"What backend framework does it use?",header:"Backend",type:"select",required:!1,options:[{label:"Express",value:"Express",description:"Node.js Express"},{label:"Fastify",value:"Fastify",description:"Node.js Fastify"},{label:"Django",value:"Django",description:"Python Django"},{label:"FastAPI",value:"FastAPI",description:"Python FastAPI"},{label:"None",value:"None",description:"No backend"},{label:"Other",value:"Other",description:"Specify manually"}]},{path:"stack.database",question:"What database does it use?",header:"Database",type:"select",required:!1,options:[{label:"PostgreSQL",value:"PostgreSQL",description:"Postgres"},{label:"MySQL",value:"MySQL",description:"MySQL/MariaDB"},{label:"SQLite",value:"SQLite",description:"Embedded SQL"},{label:"MongoDB",value:"MongoDB",description:"Document store"},{label:"None",value:"None",description:"No database"},{label:"Other",value:"Other",description:"Specify manually"}]},{path:"stack.runtime",question:"What runtime does it run on?",header:"Runtime",type:"text",required:!1},{path:"stack.hosting",question:"Where is it hosted or distributed?",header:"Hosting",type:"text",required:!1},{path:"stack.build",question:"What is the build tool?",header:"Build",type:"text",required:!1},{path:"stack.cicd",question:"What CI/CD does it use?",header:"CI/CD",type:"text",required:!1}],z9=[...w2,..._6],D6=new Map(z9.map(($)=>[$.path,$])),FJ=Object.fromEntries(z9.map(($)=>[$.path,$]));function TJ($){let Z=D6.get($);if(Z)return Z.question;let U=H9.get($)??y.find((X)=>X.canonical===$);return U?`${U.description}?`.replace(/\?\?$/,"?"):`${$}?`}function KJ($,Z){return z9.filter((U)=>{let X=U.path.split("."),z=$;for(let Q of X)if(z&&typeof z==="object"&&Q in z)z=z[Q];else{z=void 0;break}if(z==="slotignored")return!1;return Z(z)})}var AJ=new Set(["developers","development teams","development team","teams","development","cloud platform","web platform","platform","best practices","improve development efficiency","development efficiency","modern development practices","modern development","test-driven development","production/stable","production","stable","app","project","tool"]),NJ=[["npm",/\bnpm\b/i],["PyPI",/\bpypi\b/i],["crates.io",/\bcrates\.io\b/i],["Homebrew",/\bhomebrew\b/i],["Docker",/\bdocker\b/i],["Cloudflare",/\bcloudflare\b/i],["Vercel",/\bvercel\b/i],["Netlify",/\bnetlify\b/i],["AWS",/\baws\b/i],["Cloud Run",/\bcloud run\b/i],["edge",/\bedge\b/i],["browser",/\bbrowser\b/i],["WASM",/\bwasm\b/i],["GitHub",/\bgithub\b/i],["MCP Registry",/\bmcp registry\b/i],["Chrome Web Store",/\bchrome web store\b/i],["Smithery",/\bsmithery\b/i]],B6=($)=>AJ.has($.toLowerCase().trim()),wJ=/^(?:with|and|or|using|for|to|that|who|whom|whose|the|a|an|in|on|of|via|by|&)$/i;function V6($,Z=5){let U=$.trim().split(/\s+/).filter(Boolean).slice(0,Z);while(U.length&&wJ.test(U[U.length-1].replace(/[.,;:]+$/,"")))U.pop();return U.join(" ")}function I6($){let Z={};if(!$||typeof $!=="string")return Z;let U=$.trim(),X=U.replace(/^[^A-Za-z0-9]+/,"").split(/\s+(?:for|that|which|to)\s+|\s+[—–]\s+|\s-\s|:\s|\.\s|,\s/)[0].trim(),z=V6(X);if(z.split(/\s+/).filter(Boolean).length>=2&&!B6(z))Z.what=z;let Q=NJ.filter(([,H])=>H.test(U)).map(([H])=>H);if(Q.length)Z.where=Q.slice(0,4).join(", ");let J=U.match(/\bfor ((?:[A-Za-z][\w./+-]* )?(?:any |all )?(?:developers?|teams?|engineers?|builders?|users?|integrators?)\b[^.,;:—]*)/i),q=V6((J?.[1]||"").trim().replace(/\s+/g," "));if(q&&!B6(q))Z.who=q;return Z}function W6($,Z){let U=$;for(let X of Z.split("."))if(U&&typeof U==="object"&&X in U)U=U[X];else return;return U}function L6($){if(typeof $!=="string")return!1;let Z=$.trim();if(!Z||Z==="slotignored")return!1;return!y0(Z)}function bJ($,Z={}){let U=$&&typeof $==="object"?$:{},X=W6(U,"project.goal"),z=(L6(X)?String(X).trim():"")||(Z.goal??"").trim(),Q=I6(z),J={"project.goal":z||void 0,"human_context.what":Q.what,"human_context.where":Q.where,"human_context.who":Q.who},q=w2.map((Y,B)=>{let O={n:B+1,path:Y.path,header:Y.header,question:Y.question},_=W6(U,Y.path);if(L6(_))return{...O,value:String(_).trim(),status:"filled",seeded:!1};let V=J[Y.path];if(V)return{...O,value:V,status:"seeded",seeded:!0};return{...O,value:"",status:"empty",seeded:!1}}),H=q.filter((Y)=>Y.status==="filled").length,G=q.filter((Y)=>Y.status==="seeded").length,W=q.filter((Y)=>Y.status==="empty").length;return{version:O6,rows:q,filledCount:H,seededCount:G,emptyCount:W,complete:W===0}}import{createHash as M6}from"crypto";var b2="faf-bench/1",CJ={"project.name":"What is the project's name?","project.goal":"What is the project's goal — what is it for?","project.main_language":"What is the primary programming language?","human_context.who":"Who is this project for?","human_context.what":"What are they building?","human_context.why":"Why does this project exist?","human_context.where":"Where does it run or get distributed?","human_context.when":"When — what is the project's timeline or stage?","human_context.how":"How is it built or used?"};function jJ($,Z){return CJ[$]??`What is the project's ${Z.replace(/\s*\(.*\)$/,"").toLowerCase()}?`}var P6=[["typescript","ts"],["javascript","js"],["python","py","python3"],["node","nodejs","node js","node.js"],["github actions","gh actions","actions"],["postgresql","postgres","pg"],["kubernetes","k8s"],["npm","npm registry"],["cloudflare workers","cf workers","workers"],["google cloud run","cloud run","gcp cloud run"]],Y$=new Map;P6.forEach(($,Z)=>$.forEach((U)=>Y$.set(U,Z)));var SJ=new Set(["a","an","the","and","or","of","for","to","in","on","with","is","it","its","their","your","via","by","using","use","used"]);function Q9($){return $.toLowerCase().replace(/[^a-z0-9\s.+#-]/g," ").replace(/\.(?=\s|$)/g," ").replace(/\s+/g," ").trim()}function R6($){return Q9($).split(" ").filter((Z)=>Z&&!SJ.has(Z))}function F6($,Z){let U=Q9($),X=Q9(Z);if(!U||!X)return!1;if(U===X)return!0;let z=Y$.get(U);if(z!==void 0&&Y$.get(X)===z)return!0;let Q=R6($);if(Q.length===0)return!1;let J=new Set(R6(Z));return Q.every((q)=>{if(J.has(q))return!0;let H=Y$.get(q);return H!==void 0&&[...J].some((G)=>Y$.get(G)===H)})}function EJ($){let Z=L9($),U=G$($),X=[],z={},Q=0;for(let H of y){if(Z.slots[H.path]!=="populated")continue;let G=v2(U,H);if(typeof G!=="string")continue;let W=G.trim();if(!W||W$.has(W.toLowerCase()))continue;Q+=1,X.push({n:Q,path:H.path,question:jJ(H.path,H.description)}),z[Q]=W}let J=JSON.stringify({v:b2,q:X.map((H)=>[H.path,H.question])}),q=M6("sha256").update(J).digest("hex").slice(0,12);return{version:b2,qsetHash:q,questions:X,answers:z}}function gJ($){return{version:$.version,qsetHash:$.qsetHash,questions:$.questions}}function fJ($,Z){let U=$.questions.map((z)=>{let Q=Z[String(z.n)]??Z[z.path]??"";return{n:z.n,path:z.path,ok:typeof Q==="string"&&Q.trim()!==""&&F6($.answers[z.n],Q)}}),X=$.questions.filter((z)=>!U[z.n-1].ok);return{correct:U.filter((z)=>z.ok).length,total:$.questions.length,misses:X,perQuestion:U}}function yJ($,Z){let U=JSON.stringify({v:$.version,repo:Z??null,qset:$.qsetHash,protocol:$.protocol,cold:$.cold??null,faf:$.faf??null});return{projection:U,hash:M6("sha256").update(U).digest("hex")}}import{existsSync as cJ,readdirSync as K6,readFileSync as aJ}from"fs";import{join as S2,dirname as sJ,extname as iJ,resolve as rJ}from"path";var C2={"package.json":{frameworks:["Node.js","JavaScript","TypeScript"],slots:{packageManager:"npm/yarn/pnpm",mainLanguage:"JavaScript/TypeScript"},priority:35,intelligence:"ultra-high"},"README.md":{frameworks:[],slots:{targetUser:"developers",coreProblem:"understanding project",missionPurpose:"project documentation"},priority:25,intelligence:"high"},"requirements.txt":{frameworks:["Python"],slots:{packageManager:"pip",mainLanguage:"Python"},priority:35,intelligence:"ultra-high"},Pipfile:{frameworks:["Python"],slots:{packageManager:"pipenv",mainLanguage:"Python"},priority:35,intelligence:"ultra-high"},"pyproject.toml":{frameworks:["Python"],slots:{mainLanguage:"Python",runtime:"Python",backend:"Python"},priority:36,intelligence:"ultra-high"},Gemfile:{frameworks:["Ruby","Rails"],slots:{packageManager:"bundler",mainLanguage:"Ruby"},priority:35,intelligence:"ultra-high"},"composer.json":{frameworks:["PHP","Laravel","Symfony"],slots:{packageManager:"composer",mainLanguage:"PHP"},priority:35,intelligence:"ultra-high"},"Cargo.toml":{frameworks:["Rust"],slots:{packageManager:"cargo",mainLanguage:"Rust",buildTool:"cargo"},priority:36,intelligence:"ultra-high"},"go.mod":{frameworks:["Go"],slots:{packageManager:"go modules",mainLanguage:"Go",buildTool:"go build"},priority:36,intelligence:"ultra-high"},"pubspec.yaml":{frameworks:["Dart"],slots:{packageManager:"pub",mainLanguage:"Dart"},priority:35,intelligence:"ultra-high"},"pom.xml":{frameworks:["Java","Spring","Maven"],slots:{packageManager:"maven",mainLanguage:"Java",buildTool:"maven"},priority:35,intelligence:"ultra-high"},"build.gradle":{frameworks:["Java","Kotlin","Spring","Gradle"],slots:{packageManager:"gradle",mainLanguage:"Java/Kotlin",buildTool:"gradle"},priority:35,intelligence:"ultra-high"},"next.config.js":{frameworks:["Next.js"],slots:{framework:"Next.js",runtime:"Node.js",buildTool:"Next.js",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"next.config.mjs":{frameworks:["Next.js"],slots:{framework:"Next.js",runtime:"Node.js",buildTool:"Next.js",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"next.config.ts":{frameworks:["Next.js 13+"],slots:{framework:"Next.js 13+",runtime:"Node.js",buildTool:"Next.js",mainLanguage:"TypeScript",server:"Node.js"},priority:30,intelligence:"high"},"nuxt.config.js":{frameworks:["Nuxt 2"],slots:{framework:"Nuxt 2",runtime:"Node.js",buildTool:"Nuxt",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"nuxt.config.ts":{frameworks:["Nuxt 3"],slots:{framework:"Nuxt 3",runtime:"Node.js",buildTool:"Nuxt",mainLanguage:"TypeScript",server:"Node.js"},priority:30,intelligence:"high"},"svelte.config.js":{frameworks:["SvelteKit"],slots:{framework:"SvelteKit",buildTool:"Vite",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"angular.json":{frameworks:["Angular"],slots:{framework:"Angular",buildTool:"Angular CLI",mainLanguage:"TypeScript",server:"Node.js"},priority:30,intelligence:"high"},"manifest.json":{frameworks:["Chrome Extension","Browser Extension"],slots:{framework:"Chrome Extension",runtime:"Chrome/Browser",mainLanguage:"JavaScript",hosting:"Chrome Web Store",apiType:"Chrome APIs"},priority:35,intelligence:"ultra-high",confirmWith:["popup.html","background.js","content.js"]},"vue.config.js":{frameworks:["Vue"],slots:{framework:"Vue",buildTool:"Vue CLI",mainLanguage:"JavaScript"},priority:30,intelligence:"high"},"remix.config.js":{frameworks:["Remix"],slots:{framework:"Remix",runtime:"Node.js",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"gatsby-config.js":{frameworks:["Gatsby"],slots:{framework:"Gatsby",buildTool:"Gatsby",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"gatsby-config.ts":{frameworks:["Gatsby"],slots:{framework:"Gatsby",buildTool:"Gatsby",mainLanguage:"TypeScript",server:"Node.js"},priority:30,intelligence:"high"},"astro.config.mjs":{frameworks:["Astro"],slots:{framework:"Astro",buildTool:"Vite",mainLanguage:"JavaScript",server:"Node.js"},priority:30,intelligence:"high"},"redwood.toml":{frameworks:["RedwoodJS"],slots:{framework:"RedwoodJS",buildTool:"Webpack",mainLanguage:"JavaScript/TypeScript",server:"Node.js",database:"Prisma"},priority:30,intelligence:"high"},"blitz.config.ts":{frameworks:["Blitz.js"],slots:{framework:"Blitz.js",buildTool:"Next.js",mainLanguage:"TypeScript",server:"Node.js",database:"Prisma"},priority:30,intelligence:"high"},"qwik.config.ts":{frameworks:["Qwik"],slots:{framework:"Qwik",buildTool:"Vite",mainLanguage:"TypeScript",server:"Node.js"},priority:30,intelligence:"high"},"manage.py":{frameworks:["Django"],slots:{framework:"Django",backend:"Django",mainLanguage:"Python",server:"Django",apiType:"Django Views"},priority:30,intelligence:"high"},artisan:{frameworks:["Laravel"],slots:{framework:"Laravel",backend:"Laravel",mainLanguage:"PHP",server:"PHP",apiType:"Laravel Routes"},priority:30,intelligence:"high"},"mix.exs":{frameworks:["Phoenix","Elixir"],slots:{framework:"Phoenix",backend:"Phoenix",mainLanguage:"Elixir",server:"BEAM"},priority:30,intelligence:"high"},"nest-cli.json":{frameworks:["NestJS"],slots:{framework:"NestJS",backend:"NestJS",mainLanguage:"TypeScript",server:"Node.js",apiType:"REST API"},priority:30,intelligence:"high"},"strapi.config.js":{frameworks:["Strapi"],slots:{backend:"Strapi",apiType:"REST API",database:"Required",server:"Node.js"},priority:30,intelligence:"high"},Dockerfile:{frameworks:["Docker"],slots:{hosting:"Docker",connection:"Containerized"},priority:30,intelligence:"high"},"docker-compose.yml":{frameworks:["Docker Compose"],slots:{hosting:"Docker",connection:"Multi-container"},priority:30,intelligence:"high"},"docker-compose.yaml":{frameworks:["Docker Compose"],slots:{hosting:"Docker",connection:"Multi-container"},priority:30,intelligence:"high"},"kubernetes.yml":{frameworks:["Kubernetes"],slots:{hosting:"Kubernetes",connection:"Orchestrated"},priority:30,intelligence:"high"},"k8s.yaml":{frameworks:["Kubernetes"],slots:{hosting:"Kubernetes",connection:"Orchestrated"},priority:30,intelligence:"high"},"vercel.json":{frameworks:["Vercel"],slots:{hosting:"Vercel",cicd:"Vercel"},priority:30,intelligence:"high"},"netlify.toml":{frameworks:["Netlify"],slots:{hosting:"Netlify",cicd:"Netlify"},priority:30,intelligence:"high"},"render.yaml":{frameworks:["Render"],slots:{hosting:"Render",cicd:"Render"},priority:30,intelligence:"high"},"fly.toml":{frameworks:["Fly.io"],slots:{hosting:"Fly.io",cicd:"Fly.io"},priority:30,intelligence:"high"},"railway.json":{frameworks:["Railway"],slots:{hosting:"Railway",cicd:"Railway"},priority:30,intelligence:"high"},"railway.toml":{frameworks:["Railway"],slots:{hosting:"Railway",cicd:"Railway"},priority:30,intelligence:"high"},"app.yaml":{frameworks:["Google App Engine"],slots:{hosting:"Google Cloud",cicd:"Google Cloud"},priority:30,intelligence:"high"},Procfile:{frameworks:["Heroku"],slots:{hosting:"Heroku",cicd:"Heroku"},priority:30,intelligence:"high"},"vite.config.js":{frameworks:["Vite"],slots:{buildTool:"Vite"},priority:25,intelligence:"medium"},"vite.config.ts":{frameworks:["Vite"],slots:{buildTool:"Vite",mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"webpack.config.js":{frameworks:["Webpack"],slots:{buildTool:"Webpack"},priority:25,intelligence:"medium"},"rollup.config.js":{frameworks:["Rollup"],slots:{buildTool:"Rollup"},priority:25,intelligence:"medium"},"esbuild.config.js":{frameworks:["esbuild"],slots:{buildTool:"esbuild"},priority:25,intelligence:"medium"},"parcel.config.js":{frameworks:["Parcel"],slots:{buildTool:"Parcel"},priority:25,intelligence:"medium"},"snowpack.config.js":{frameworks:["Snowpack"],slots:{buildTool:"Snowpack"},priority:25,intelligence:"medium"},"tsconfig.json":{frameworks:["TypeScript"],slots:{mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"jsconfig.json":{frameworks:["JavaScript"],slots:{mainLanguage:"JavaScript"},priority:20,intelligence:"medium"},"babel.config.js":{frameworks:["Babel"],slots:{buildTool:"Babel"},priority:20,intelligence:"medium"},".babelrc":{frameworks:["Babel"],slots:{buildTool:"Babel"},priority:20,intelligence:"medium"},"jest.config.js":{frameworks:["Jest"],slots:{cicd:"Jest"},priority:25,intelligence:"medium"},"jest.config.ts":{frameworks:["Jest"],slots:{cicd:"Jest",mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"vitest.config.ts":{frameworks:["Vitest"],slots:{cicd:"Vitest",mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"cypress.config.js":{frameworks:["Cypress"],slots:{cicd:"Cypress"},priority:25,intelligence:"medium"},"playwright.config.ts":{frameworks:["Playwright"],slots:{cicd:"Playwright",mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"karma.conf.js":{frameworks:["Karma"],slots:{cicd:"Karma"},priority:20,intelligence:"medium"},"mocha.opts":{frameworks:["Mocha"],slots:{cicd:"Mocha"},priority:20,intelligence:"medium"},".rspec":{frameworks:["RSpec"],slots:{cicd:"RSpec",mainLanguage:"Ruby"},priority:25,intelligence:"medium"},"pytest.ini":{frameworks:["Pytest"],slots:{cicd:"Pytest",mainLanguage:"Python"},priority:25,intelligence:"medium"},"phpunit.xml":{frameworks:["PHPUnit"],slots:{cicd:"PHPUnit",mainLanguage:"PHP"},priority:25,intelligence:"medium"},"schema.prisma":{frameworks:["Prisma"],slots:{database:"Prisma ORM",connection:"Prisma"},priority:25,intelligence:"medium"},"drizzle.config.ts":{frameworks:["Drizzle"],slots:{database:"Drizzle ORM",connection:"Drizzle",mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"ormconfig.js":{frameworks:["TypeORM"],slots:{database:"TypeORM",connection:"TypeORM"},priority:25,intelligence:"medium"},"knexfile.js":{frameworks:["Knex.js"],slots:{database:"Knex.js",connection:"Knex.js"},priority:25,intelligence:"medium"},"sequelize.config.js":{frameworks:["Sequelize"],slots:{database:"Sequelize",connection:"Sequelize"},priority:25,intelligence:"medium"},"alembic.ini":{frameworks:["Alembic"],slots:{database:"Alembic",mainLanguage:"Python"},priority:25,intelligence:"medium"},".github/workflows":{frameworks:["GitHub Actions"],slots:{cicd:"GitHub Actions"},priority:25,intelligence:"medium"},".gitlab-ci.yml":{frameworks:["GitLab CI"],slots:{cicd:"GitLab CI"},priority:25,intelligence:"medium"},Jenkinsfile:{frameworks:["Jenkins"],slots:{cicd:"Jenkins"},priority:25,intelligence:"medium"},".circleci/config.yml":{frameworks:["CircleCI"],slots:{cicd:"CircleCI"},priority:25,intelligence:"medium"},".travis.yml":{frameworks:["Travis CI"],slots:{cicd:"Travis CI"},priority:25,intelligence:"medium"},"azure-pipelines.yml":{frameworks:["Azure DevOps"],slots:{cicd:"Azure DevOps"},priority:25,intelligence:"medium"},"bitbucket-pipelines.yml":{frameworks:["Bitbucket Pipelines"],slots:{cicd:"Bitbucket Pipelines"},priority:25,intelligence:"medium"},"tailwind.config.js":{frameworks:["Tailwind CSS"],slots:{cssFramework:"Tailwind CSS"},priority:20,intelligence:"medium"},"tailwind.config.ts":{frameworks:["Tailwind CSS"],slots:{cssFramework:"Tailwind CSS",mainLanguage:"TypeScript"},priority:20,intelligence:"medium"},"postcss.config.js":{frameworks:["PostCSS"],slots:{cssFramework:"PostCSS"},priority:20,intelligence:"medium"},"uno.config.ts":{frameworks:["UnoCSS"],slots:{cssFramework:"UnoCSS",mainLanguage:"TypeScript"},priority:20,intelligence:"medium"},"styled-components.config.js":{frameworks:["styled-components"],slots:{cssFramework:"styled-components",uiLibrary:"styled-components"},priority:20,intelligence:"medium"},"emotion.config.js":{frameworks:["Emotion"],slots:{cssFramework:"Emotion",uiLibrary:"Emotion"},priority:20,intelligence:"medium"},"metro.config.js":{frameworks:["React Native"],slots:{framework:"React Native",mainLanguage:"JavaScript"},priority:25,intelligence:"medium"},"expo.config.js":{frameworks:["Expo"],slots:{framework:"React Native",buildTool:"Expo"},priority:25,intelligence:"medium"},"app.json":{frameworks:["React Native","Expo"],slots:{framework:"React Native"},priority:20,intelligence:"medium",confirmWith:["expo"]},"capacitor.config.ts":{frameworks:["Capacitor"],slots:{framework:"Capacitor",mainLanguage:"TypeScript"},priority:25,intelligence:"medium"},"ionic.config.json":{frameworks:["Ionic"],slots:{framework:"Ionic",uiLibrary:"Ionic"},priority:25,intelligence:"medium"},"nx.json":{frameworks:["Nx"],slots:{buildTool:"Nx"},priority:25,intelligence:"medium"},"turbo.json":{frameworks:["Turborepo"],slots:{buildTool:"Turborepo"},priority:25,intelligence:"medium"},"lerna.json":{frameworks:["Lerna"],slots:{buildTool:"Lerna"},priority:25,intelligence:"medium"},"rush.json":{frameworks:["Rush"],slots:{buildTool:"Rush"},priority:25,intelligence:"medium"},"pnpm-workspace.yaml":{frameworks:["pnpm workspaces"],slots:{packageManager:"pnpm",buildTool:"pnpm workspaces"},priority:25,intelligence:"medium"},"*.svelte":{frameworks:["Svelte","SvelteKit"],slots:{framework:"Svelte"},priority:15,intelligence:"low"},"*.vue":{frameworks:["Vue"],slots:{framework:"Vue"},priority:15,intelligence:"low"},"*.jsx":{frameworks:["React"],slots:{framework:"React",mainLanguage:"JavaScript"},priority:15,intelligence:"low"},"*.ts":{frameworks:["TypeScript"],slots:{mainLanguage:"TypeScript"},priority:15,intelligence:"low"},"*.tsx":{frameworks:["React","TypeScript"],slots:{framework:"React",mainLanguage:"TypeScript"},priority:15,intelligence:"low"},"*.py":{frameworks:["Python"],slots:{mainLanguage:"Python"},priority:15,intelligence:"low"},"*.rb":{frameworks:["Ruby"],slots:{mainLanguage:"Ruby"},priority:15,intelligence:"low"},"*.php":{frameworks:["PHP"],slots:{mainLanguage:"PHP"},priority:15,intelligence:"low"},"*.java":{frameworks:["Java"],slots:{mainLanguage:"Java"},priority:15,intelligence:"low"},"*.kt":{frameworks:["Kotlin"],slots:{mainLanguage:"Kotlin"},priority:15,intelligence:"low"},"*.swift":{frameworks:["Swift"],slots:{mainLanguage:"Swift"},priority:15,intelligence:"low"},"*.go":{frameworks:["Go"],slots:{mainLanguage:"Go"},priority:15,intelligence:"low"},"*.rs":{frameworks:["Rust"],slots:{mainLanguage:"Rust"},priority:15,intelligence:"low"},"*.dart":{frameworks:["Flutter","Dart"],slots:{mainLanguage:"Dart"},priority:15,intelligence:"low"},"*.ex":{frameworks:["Elixir"],slots:{mainLanguage:"Elixir"},priority:15,intelligence:"low"},"*.exs":{frameworks:["Elixir"],slots:{mainLanguage:"Elixir"},priority:15,intelligence:"low"},"*.scala":{frameworks:["Scala"],slots:{mainLanguage:"Scala"},priority:15,intelligence:"low"},"*.clj":{frameworks:["Clojure"],slots:{mainLanguage:"Clojure"},priority:15,intelligence:"low"},"*.lua":{frameworks:["Lua"],slots:{mainLanguage:"Lua"},priority:15,intelligence:"low"},"*.r":{frameworks:["R"],slots:{mainLanguage:"R"},priority:15,intelligence:"low"},"*.R":{frameworks:["R"],slots:{mainLanguage:"R"},priority:15,intelligence:"low"},"*.jl":{frameworks:["Julia"],slots:{mainLanguage:"Julia"},priority:15,intelligence:"low"},"*.nim":{frameworks:["Nim"],slots:{mainLanguage:"Nim"},priority:15,intelligence:"low"},"*.zig":{frameworks:["Zig"],slots:{mainLanguage:"Zig"},priority:15,intelligence:"low"},"build.zig":{frameworks:["Zig"],slots:{packageManager:"Zig Package Manager",mainLanguage:"Zig",buildTool:"zig build",framework:"Zig",build:"zig build"},priority:35,intelligence:"ultra-high"},"openapi.json":{frameworks:["OpenAPI"],slots:{apiType:"REST API",backend:"API Server"},priority:30,intelligence:"high"},"openapi.yaml":{frameworks:["OpenAPI"],slots:{apiType:"REST API",backend:"API Server"},priority:30,intelligence:"high"},"swagger.json":{frameworks:["Swagger"],slots:{apiType:"REST API",backend:"API Server"},priority:30,intelligence:"high"},"graphql.schema":{frameworks:["GraphQL"],slots:{apiType:"GraphQL",backend:"GraphQL Server"},priority:30,intelligence:"high"},"schema.graphql":{frameworks:["GraphQL"],slots:{apiType:"GraphQL",backend:"GraphQL Server"},priority:30,intelligence:"high"},".graphqlconfig":{frameworks:["GraphQL"],slots:{apiType:"GraphQL"},priority:25,intelligence:"medium"},"redux.config.js":{frameworks:["Redux"],slots:{stateManagement:"Redux"},priority:20,intelligence:"medium"},"mobx.config.js":{frameworks:["MobX"],slots:{stateManagement:"MobX"},priority:20,intelligence:"medium"},"vuex.config.js":{frameworks:["Vuex"],slots:{stateManagement:"Vuex",framework:"Vue"},priority:20,intelligence:"medium"},"pinia.config.js":{frameworks:["Pinia"],slots:{stateManagement:"Pinia",framework:"Vue"},priority:20,intelligence:"medium"},"zustand.config.js":{frameworks:["Zustand"],slots:{stateManagement:"Zustand"},priority:20,intelligence:"medium"},".eslintrc.js":{frameworks:["ESLint"],slots:{},priority:15,intelligence:"low"},".eslintrc.json":{frameworks:["ESLint"],slots:{},priority:15,intelligence:"low"},".prettierrc":{frameworks:["Prettier"],slots:{},priority:15,intelligence:"low"},".prettierrc.json":{frameworks:["Prettier"],slots:{},priority:15,intelligence:"low"},"biome.json":{frameworks:["Biome"],slots:{},priority:15,intelligence:"low"},".editorconfig":{frameworks:["EditorConfig"],slots:{},priority:10,intelligence:"low"},"serverless.yml":{frameworks:["Serverless Framework"],slots:{hosting:"AWS Lambda/Azure/GCP",backend:"Serverless",apiType:"API Gateway"},priority:30,intelligence:"high"},"serverless.yaml":{frameworks:["Serverless Framework"],slots:{hosting:"AWS Lambda/Azure/GCP",backend:"Serverless",apiType:"API Gateway"},priority:30,intelligence:"high"},"sam.yaml":{frameworks:["AWS SAM"],slots:{hosting:"AWS Lambda",backend:"AWS SAM",cicd:"AWS SAM CLI"},priority:30,intelligence:"high"},"template.yaml":{frameworks:["AWS SAM","CloudFormation"],slots:{hosting:"AWS",backend:"AWS SAM/CloudFormation",cicd:"AWS"},priority:25,intelligence:"medium",confirmWith:["samconfig.toml"]},"amplify.yml":{frameworks:["AWS Amplify"],slots:{hosting:"AWS Amplify",backend:"AWS Amplify",cicd:"AWS Amplify"},priority:30,intelligence:"high"},Podfile:{frameworks:["CocoaPods","iOS"],slots:{packageManager:"CocoaPods",mainLanguage:"Swift/Objective-C",framework:"iOS Native"},priority:30,intelligence:"high"},"build.gradle.kts":{frameworks:["Gradle Kotlin DSL","Android","Kotlin"],slots:{packageManager:"Gradle",mainLanguage:"Kotlin",buildTool:"Gradle Kotlin DSL",framework:"Android"},priority:30,intelligence:"high"},"*.ipynb":{frameworks:["Jupyter","Python"],slots:{mainLanguage:"Python",framework:"Jupyter Notebook"},priority:30,intelligence:"high"},MLproject:{frameworks:["MLflow"],slots:{mainLanguage:"Python",framework:"MLflow",backend:"MLflow",cicd:"MLflow"},priority:30,intelligence:"high"},"dvc.yaml":{frameworks:["DVC","Data Version Control"],slots:{mainLanguage:"Python",framework:"DVC",cicd:"DVC Pipelines"},priority:30,intelligence:"high"},"dvc.lock":{frameworks:["DVC"],slots:{framework:"DVC"},priority:20,intelligence:"medium"},"wrangler.toml":{frameworks:["Cloudflare Workers","Cloudflare"],slots:{hosting:"Cloudflare Workers",backend:"Cloudflare Workers",runtime:"V8 Isolates"},priority:30,intelligence:"high"},"deno.json":{frameworks:["Deno"],slots:{runtime:"Deno",mainLanguage:"TypeScript",packageManager:"Deno"},priority:30,intelligence:"high"},"bun.lockb":{frameworks:["Bun"],slots:{runtime:"Bun",packageManager:"Bun",mainLanguage:"TypeScript/JavaScript"},priority:30,intelligence:"high"},"codecov.yml":{frameworks:["Codecov"],slots:{cicd:"Codecov"},priority:25,intelligence:"high"},"dependabot.yml":{frameworks:["Dependabot","GitHub"],slots:{cicd:"Dependabot"},priority:25,intelligence:"high"},"renovate.json":{frameworks:["Renovate"],slots:{cicd:"Renovate"},priority:25,intelligence:"high"},Makefile:{frameworks:["Make","GNU Make"],slots:{buildTool:"Make"},priority:30,intelligence:"high"},"CMakeLists.txt":{frameworks:["CMake","C","C++"],slots:{buildTool:"CMake",mainLanguage:"C/C++"},priority:30,intelligence:"high"},"meson.build":{frameworks:["Meson","C","C++"],slots:{buildTool:"Meson",mainLanguage:"C/C++"},priority:30,intelligence:"high"},"*.c":{frameworks:["C"],slots:{mainLanguage:"C"},priority:30,intelligence:"high"},"*.cpp":{frameworks:["C++"],slots:{mainLanguage:"C++"},priority:30,intelligence:"high"},"*.cc":{frameworks:["C++"],slots:{mainLanguage:"C++"},priority:30,intelligence:"high"},"*.cxx":{frameworks:["C++"],slots:{mainLanguage:"C++"},priority:25,intelligence:"high"},"*.h":{frameworks:["C","C++"],slots:{mainLanguage:"C/C++"},priority:25,intelligence:"high"},"*.hpp":{frameworks:["C++"],slots:{mainLanguage:"C++"},priority:25,intelligence:"high"},"*.hxx":{frameworks:["C++"],slots:{mainLanguage:"C++"},priority:20,intelligence:"medium"},".env":{frameworks:[],slots:{},priority:20,intelligence:"medium"},".env.example":{frameworks:[],slots:{},priority:25,intelligence:"high"},".env.local":{frameworks:[],slots:{},priority:20,intelligence:"medium"},".env.development":{frameworks:[],slots:{},priority:20,intelligence:"medium"},".env.production":{frameworks:[],slots:{},priority:20,intelligence:"medium"},"skaffold.yaml":{frameworks:["Skaffold","Kubernetes"],slots:{hosting:"Kubernetes",cicd:"Skaffold"},priority:30,intelligence:"high"},"Chart.yaml":{frameworks:["Helm","Kubernetes"],slots:{hosting:"Kubernetes",backend:"Helm"},priority:30,intelligence:"high"},"values.yaml":{frameworks:["Helm","Kubernetes"],slots:{hosting:"Kubernetes"},priority:25,intelligence:"high",confirmWith:["Chart.yaml"]},"pulumi.yaml":{frameworks:["Pulumi"],slots:{hosting:"Cloud",cicd:"Pulumi"},priority:30,intelligence:"high"},"Pulumi.yaml":{frameworks:["Pulumi"],slots:{hosting:"Cloud",cicd:"Pulumi"},priority:30,intelligence:"high"},"terragrunt.hcl":{frameworks:["Terragrunt","Terraform"],slots:{hosting:"Cloud",cicd:"Terragrunt"},priority:30,intelligence:"high"},"ansible.yml":{frameworks:["Ansible"],slots:{cicd:"Ansible"},priority:30,intelligence:"high"},"playbook.yml":{frameworks:["Ansible"],slots:{cicd:"Ansible"},priority:25,intelligence:"high"},"*.cs":{frameworks:["C#",".NET","Unity"],slots:{mainLanguage:"C#"},priority:30,intelligence:"high"},"*.m":{frameworks:["Objective-C","iOS"],slots:{mainLanguage:"Objective-C"},priority:25,intelligence:"high"},".nvmrc":{frameworks:["Node.js","nvm"],slots:{runtime:"Node.js"},priority:25,intelligence:"high"},".tool-versions":{frameworks:["asdf"],slots:{},priority:25,intelligence:"high"},".ruby-version":{frameworks:["Ruby","rbenv"],slots:{mainLanguage:"Ruby",runtime:"Ruby"},priority:25,intelligence:"high"},".python-version":{frameworks:["Python","pyenv"],slots:{mainLanguage:"Python",runtime:"Python"},priority:25,intelligence:"high"},".dockerignore":{frameworks:["Docker"],slots:{},priority:20,intelligence:"medium"},".gitattributes":{frameworks:["Git"],slots:{},priority:15,intelligence:"low"},".npmrc":{frameworks:["npm","Node.js"],slots:{packageManager:"npm"},priority:20,intelligence:"medium"},"sonar-project.properties":{frameworks:["SonarQube","SonarCloud"],slots:{cicd:"SonarQube"},priority:25,intelligence:"high"},"*.fs":{frameworks:["F#",".NET"],slots:{mainLanguage:"F#"},priority:25,intelligence:"high"},"*.mm":{frameworks:["Objective-C++","iOS","macOS"],slots:{mainLanguage:"Objective-C++"},priority:25,intelligence:"high"},"build.zig.zon":{frameworks:["Zig"],slots:{mainLanguage:"Zig",packageManager:"Zig Package Manager",buildTool:"zig build"},priority:35,intelligence:"ultra-high"},"gleam.toml":{frameworks:["Gleam","BEAM","Erlang"],slots:{mainLanguage:"Gleam",runtime:"BEAM",packageManager:"Gleam"},priority:30,intelligence:"high"},"bunfig.toml":{frameworks:["Bun"],slots:{runtime:"Bun",packageManager:"Bun",buildTool:"Bun"},priority:30,intelligence:"high"},"mise.toml":{frameworks:["mise"],slots:{},priority:25,intelligence:"high"},".mise.toml":{frameworks:["mise"],slots:{},priority:25,intelligence:"high"},"manifest.toml":{frameworks:["Flox","Nix"],slots:{},priority:25,intelligence:"high",confirmWith:[".flox"]},justfile:{frameworks:["Just"],slots:{buildTool:"Just"},priority:25,intelligence:"high"},".pre-commit-config.yaml":{frameworks:["pre-commit"],slots:{cicd:"pre-commit"},priority:25,intelligence:"high"},"CLAUDE.md":{frameworks:["Claude Code"],slots:{},priority:30,intelligence:"high",confirmWith:[".claude"]}};import{existsSync as T6,readFileSync as hJ,readdirSync as uJ}from"fs";import{join as j2}from"path";var S0={version:1,_doc:"SINGLE SOURCE of Dart/Flutter detection KNOWLEDGE (A+B hybrid, the Truth-is-faf-cli spec). faf-cli imports this directly; faf-python-sdk vendors a synced copy (phase 2); MCPs consume the SDK (phase 3). To bolster Dart/Flutter support — a new state library, server framework, MCP dep — edit THIS file and every engine inherits it. The thin per-language LOGIC (pubspec parse, app-vs-package heuristic, priority branching) lives in code, not here.",flutterDeps:["flutter"],mcpDeps:["dart_mcp","mcp_server","mcp_dart","dart_mcp_server","mcp"],serverFrameworks:[["serverpod","Serverpod"],["dart_frog","Dart Frog"],["conduit","Conduit"],["angel3_framework","Angel3"],["alfred","Alfred"],["shelf","Shelf"]],stateManagement:[["flutter_riverpod","Riverpod"],["hooks_riverpod","Riverpod"],["riverpod","Riverpod"],["flutter_bloc","Bloc"],["bloc","Bloc"],["provider","Provider"],["get","GetX"],["flutter_mobx","MobX"],["mobx","MobX"],["signals","Signals"]],routing:[["go_router","go_router"],["auto_route","auto_route"]]};var kJ=S0.flutterDeps,vJ=S0.mcpDeps,mJ=S0.serverFrameworks,pJ=S0.stateManagement,lJ=S0.routing;function dJ($){let Z=new Set,U=!1;for(let X of $.split(`
215
+ `)){if(/^(dependencies|dev_dependencies|dependency_overrides):\s*$/.test(X)){U=!0;continue}if(/^\S/.test(X))U=!1;if(U){let z=X.match(/^\s{2}([a-zA-Z0-9_]+):/);if(z)Z.add(z[1].toLowerCase())}}return Z}function J9($){let Z=j2($,"pubspec.yaml");if(!T6(Z))return null;let U;try{U=hJ(Z,"utf-8")}catch{return null}let X=dJ(U),z=(T)=>X.has(T.toLowerCase()),Q=kJ.some(z)||/^flutter:\s*$/m.test(U)||/\bsdk:\s*flutter\b/.test(U),J=vJ.find(z),q=mJ.find(([T])=>z(T)),H=pJ.find(([T])=>z(T)),G=H?H[1]:"",W=lJ.find(([T])=>z(T)),Y=W?W[1]:"",B=z("flutter_test")?"flutter_test":z("test")?"test":"",O=/^executables:\s*$/m.test(U),_=!1;try{_=uJ(j2($,"bin")).some((T)=>T.endsWith(".dart"))}catch{}let V=O||_,L,R="",M;if(Q)if(R="Flutter",T6(j2($,"lib","main.dart"))||/^publish_to:\s*['"]?none\b/m.test(U))L="mobile",M="pubspec.yaml (Flutter app)";else L="library",M="pubspec.yaml (Flutter package)";else if(J)L="mcp",M=`pubspec.yaml + ${J} (Dart MCP server)`;else if(q)L="backend",R=q[1],M=`pubspec.yaml + ${q[0]} (Dart backend)`;else if(V)L="cli",M=O?"pubspec.yaml executables: (Dart CLI)":"pubspec.yaml + bin/*.dart (Dart CLI)";else L="library",M="pubspec.yaml (Dart package)";return{appType:L,isFlutter:Q,framework:R,stateManagement:G,routing:Y,testing:B,found:M}}var nJ=new Set(["node_modules",".git","dist","build","venv",".venv","__pycache__","target","coverage",".next",".svelte-kit","vendor"]),oJ=new Set([".py",".ts",".tsx",".js",".jsx",".svelte",".vue",".rb",".go",".rs",".php",".java",".kt",".swift"]),tJ={mainLanguage:["project","main_language"],main_language:["project","main_language"],framework:["stack","frontend"],cssFramework:["stack","css_framework"],css:["stack","css_framework"],uiLibrary:["stack","ui_library"],ui_library:["stack","ui_library"],stateManagement:["stack","state_management"],state:["stack","state_management"],backend:["stack","backend"],apiType:["stack","api_type"],api:["stack","api_type"],runtime:["stack","runtime"],database:["stack","database"],db:["stack","database"],connection:["stack","connection"],hosting:["stack","hosting"],buildTool:["stack","build"],build_tool:["stack","build"],build:["stack","build"],packageManager:["stack","package_manager"],pkg_manager:["stack","package_manager"],cicd:["stack","cicd"]},eJ=[["packageManager","package-manager"],["pkg_manager","package-manager"],["mainLanguage","language"],["main_language","language"],["framework","framework"],["backend","backend"],["database","database"],["db","database"],["cicd","ci-cd"],["hosting","hosting"],["buildTool","build"],["build_tool","build"],["build","build"],["runtime","runtime"],["cssFramework","css"],["css","css"],["uiLibrary","ui-library"],["stateManagement","state-management"],["apiType","api"],["api","api"]];function $q($,Z){for(let[U,X]of eJ)if(U in $)return X;return Z.length>0?"framework":"config"}function Zq($){try{let Z=JSON.parse(aJ($,"utf-8")),U=["background","content_scripts","action","browser_action","permissions"].some((X)=>(X in Z));if(typeof Z.manifest_version==="number"&&U)return"chrome";return"other"}catch{return"other"}}function Uq($){let Z=[],U=rJ($),X=cJ(S2($,".git"));for(let z=0;z<10;z++){let Q;try{Q=K6(U)}catch{break}for(let q of Q){let H=C2[q];if(!H)continue;if(q==="manifest.json"&&Zq(S2(U,q))!=="chrome")continue;if(q==="pubspec.yaml"){let G=J9(U);if(G){let W={mainLanguage:"Dart",packageManager:"pub"};if(G.isFlutter){if(W.framework="Flutter",G.stateManagement)W.stateManagement=G.stateManagement}else if(G.appType==="backend"&&G.framework)W.backend=G.framework;else if(G.appType==="mcp")W.apiType="MCP";Z.push({slots:W,priority:H.priority,frameworks:G.isFlutter?["Flutter","Dart"]:["Dart"],fileName:q});continue}}Z.push({slots:H.slots||{},priority:H.priority,frameworks:H.frameworks,fileName:q})}if(X&&z===0)break;let J=sJ(U);if(J===U)break;U=J}return Z}function Xq($){let Z=[];for(let U of N6($,2,{count:0})){let X=C2[`*${U}`],z=X?.slots?.mainLanguage;if(z)Z.push({slots:{mainLanguage:z},priority:X.priority,frameworks:X.frameworks})}return Z}function A6($){let Z=[...Uq($),...Xq($)],U={},X={},z=new Set;for(let G of Z){G.frameworks.forEach((W)=>z.add(W));for(let[W,Y]of Object.entries(G.slots))if(Y&&!Y.includes("/")&&(!(W in U)||G.priority>X[W]))U[W]=Y,X[W]=G.priority}let Q=new Map;for(let G of Z){if(!G.fileName)continue;if(!Q.has(G.fileName))Q.set(G.fileName,{fileName:G.fileName,category:$q(G.slots,G.frameworks),priority:G.priority})}let J=[...Q.values()].sort((G,W)=>W.priority-G.priority||G.fileName.localeCompare(W.fileName)),q=[];if(U.mainLanguage)q.push(U.mainLanguage.toLowerCase());if(U.framework)q.push(U.framework.toLowerCase());let H=q.length>0?q.join("-"):"unknown-stack";return{slotFills:U,frameworks:[...z],confirmedCount:Z.length,discoveredFormats:J,stackSignature:H}}function E2($){let{slotFills:Z}=A6($),U={};for(let[X,z]of Object.entries(Z)){let Q=tJ[X];if(!Q||!z)continue;let[J,q]=Q;if(J==="project")(U.project??={})[q]=z;else(U.stack??={})[q]=z}return U}function N6($,Z,U){let X=new Set;if(Z<0||U.count>400)return X;let z;try{z=K6($,{withFileTypes:!0})}catch{return X}for(let Q of z){if(U.count++>400)break;if(!Q.isDirectory()){let J=iJ(Q.name);if(oJ.has(J))X.add(J);continue}if(nJ.has(Q.name)||Q.name.startsWith("."))continue;for(let J of N6(S2($,Q.name),Z-1,U))X.add(J)}return X}import{existsSync as w6,readFileSync as b6}from"fs";import{join as C6}from"path";function g2($){let Z=zq($),U=Qq($),X={},z=(Q,J)=>{if(J)X[Q]=J};return z("what",Jq(Z,U)),z("who",qq(U)),z("why",Hq(U)),z("where",Gq(Z,U)),z("when",Yq(U)),z("how",Bq(Z,U)),X}function zq($){let Z=C6($,"package.json");if(!w6(Z))return null;try{return JSON.parse(b6(Z,"utf-8"))}catch{return null}}function Qq($){let Z=C6($,"README.md");if(!w6(Z))return"";let U;try{U=b6(Z,"utf-8")}catch{return""}return U.split(`
216
+ `).filter((X)=>!/^\s*\[!\[/.test(X)&&!/^\s*!\[/.test(X)).join(`
217
+ `).replace(/<[^>]+>/g,"").replace(/!\[[^\]]*\]\([^)]*\)/g,"").trim()}function W0($){return $.replace(/\s+/g," ").replace(/[#*`>]/g,"").trim().slice(0,280)}function E0($,Z){let U=new RegExp(`##?\\s+(?:${Z})\\s*\\n+([\\s\\S]+?)(?:\\n\\n|\\n##?|$)`,"i"),X=$.match(U);return X&&X[1]&&X[1].trim().length>20?W0(X[1]):null}function B$($,Z,U=30){for(let X of Z){let z=$.match(X);if(z&&z[1]&&z[1].trim().length>=U)return W0(z[1])}return null}function Jq($,Z){if($?.description&&$.description.length>20)return W0($.description);let U=E0(Z,"Purpose|What|About|Overview|Description");if(U)return U;let X=Z.split(/\n\s*\n/).map((z)=>z.trim()).find((z)=>z.length>30&&!z.startsWith("#"));if(X)return W0(X);return B$(Z,[/(?:core|main|primary)\s+(?:problem|challenge)(?:\s+is)?\s*:?\s*([^.\n]{30,})/i,/solves?\s+(?:the\s+)?(?:problem\s+of\s+)?([^.\n]{30,})/i])}function qq($){let Z=E0($,"Audience|Who|Who is this for|Who it.s for");if(Z)return Z;return B$($,[/\b(?:designed|built|made)\s+for\s+((?:developers?|teams?|engineers?|builders?|founders?)[^.\n]{0,80})/i,/\bfor\s+((?:developers?|teams?|engineers?|builders?|founders?)[^.\n]{0,80})/i],8)}function Hq($){let Z=E0($,"Why|Mission|Motivation|Rationale|Vision");if(Z)return Z;return B$($,[/(?:our\s+)?(?:mission|purpose|goal)(?:\s+is)?\s*:?\s*([^.\n]{30,})/i,/(?:built|created|designed)\s+(?:because|to)\s+([^.\n]{30,})/i])}function Gq($,Z){let U=typeof $?.repository==="string"?$.repository:$?.repository?.url;if(U)return W0(U.replace(/^git\+/,"").replace(/\.git$/,""));if($?.homepage)return W0($.homepage);return B$(Z,[/\b(?:deployed|hosted|available|published)\s+(?:on|at|via)\s+([^.\n]{4,80})/i],4)}function Yq($){let Z=E0($,"Timeline|Status|Release|Roadmap");if(Z)return Z;return B$($,[/\b(production\s+since\s+[^.\n]{4,60})/i,/\b((?:in\s+)?(?:production|beta|alpha|development)\s+since\s+[^.\n]{4,60})/i,/\bsince\s+((?:[A-Z][a-z]+\s+)?\d{4}[^.\n]{0,40})/],4)}function Bq($,Z){let U=$?.scripts?Object.keys($.scripts):[],X=["start","dev","build"].filter((Q)=>U.includes(Q));if(X.length)return W0(X.map((Q)=>`npm run ${Q}`).join(", "));let z=E0(Z,"Usage|Getting Started|Install|Installation|Quick Start");if(z)return z;return E0(Z,"Architecture|Approach|How it works|Methodology|How")}import{existsSync as F,readFileSync as r,readdirSync as S6}from"fs";import{join as P}from"path";var j6=[{name:"Next.js",slug:"nextjs",category:"frontend",signals:[{type:"dependency",key:"next"},{type:"file",pattern:"next.config.*"}]},{name:"React",slug:"react",category:"frontend",signals:[{type:"dependency",key:"react"}]},{name:"SvelteKit",slug:"sveltekit",category:"frontend",signals:[{type:"dependency",key:"@sveltejs/kit"},{type:"file",pattern:"svelte.config.*"}]},{name:"Svelte",slug:"svelte",category:"frontend",signals:[{type:"dependency",key:"svelte"},{type:"devDependency",key:"svelte"}]},{name:"Vue.js",slug:"vue",category:"frontend",signals:[{type:"dependency",key:"vue"}]},{name:"Nuxt",slug:"nuxt",category:"frontend",signals:[{type:"dependency",key:"nuxt"},{type:"file",pattern:"nuxt.config.*"}]},{name:"Angular",slug:"angular",category:"frontend",signals:[{type:"dependency",key:"@angular/core"},{type:"file",pattern:"angular.json"}]},{name:"Astro",slug:"astro",category:"frontend",signals:[{type:"dependency",key:"astro"},{type:"file",pattern:"astro.config.*"}]},{name:"Solid",slug:"solid",category:"frontend",signals:[{type:"dependency",key:"solid-js"}]},{name:"Remix",slug:"remix",category:"frontend",signals:[{type:"dependency",key:"@remix-run/react"}]},{name:"Gatsby",slug:"gatsby",category:"frontend",signals:[{type:"dependency",key:"gatsby"},{type:"file",pattern:"gatsby-config.*"}]},{name:"Qwik",slug:"qwik",category:"frontend",signals:[{type:"dependency",key:"@builder.io/qwik"}]},{name:"Vercel (SvelteKit)",slug:"adapter-vercel",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-vercel"},{type:"devDependency",key:"@sveltejs/adapter-vercel"}]},{name:"Node (SvelteKit)",slug:"adapter-node",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-node"},{type:"devDependency",key:"@sveltejs/adapter-node"}]},{name:"Static (SvelteKit)",slug:"adapter-static",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-static"},{type:"devDependency",key:"@sveltejs/adapter-static"}]},{name:"Cloudflare (SvelteKit)",slug:"adapter-cloudflare",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-cloudflare"},{type:"devDependency",key:"@sveltejs/adapter-cloudflare"}]},{name:"Netlify (SvelteKit)",slug:"adapter-netlify",category:"hosting",signals:[{type:"dependency",key:"@sveltejs/adapter-netlify"},{type:"devDependency",key:"@sveltejs/adapter-netlify"}]},{name:"Tailwind CSS",slug:"tailwind",category:"css",signals:[{type:"dependency",key:"tailwindcss"},{type:"devDependency",key:"tailwindcss"},{type:"file",pattern:"tailwind.config.*"}]},{name:"Bootstrap",slug:"bootstrap",category:"css",signals:[{type:"dependency",key:"bootstrap"}]},{name:"Styled Components",slug:"styled-components",category:"css",signals:[{type:"dependency",key:"styled-components"}]},{name:"shadcn/ui",slug:"shadcn",category:"ui",signals:[{type:"file",pattern:"components.json"},{type:"dependency",key:"@radix-ui/react-dialog"}]},{name:"Material UI",slug:"mui",category:"ui",signals:[{type:"dependency",key:"@mui/material"}]},{name:"Chakra UI",slug:"chakra",category:"ui",signals:[{type:"dependency",key:"@chakra-ui/react"}]},{name:"Ant Design",slug:"antd",category:"ui",signals:[{type:"dependency",key:"antd"}]},{name:"Redux",slug:"redux",category:"state",signals:[{type:"dependency",key:"@reduxjs/toolkit"}]},{name:"Zustand",slug:"zustand",category:"state",signals:[{type:"dependency",key:"zustand"}]},{name:"Jotai",slug:"jotai",category:"state",signals:[{type:"dependency",key:"jotai"}]},{name:"Pinia",slug:"pinia",category:"state",signals:[{type:"dependency",key:"pinia"}]},{name:"Express",slug:"express",category:"backend",signals:[{type:"dependency",key:"express"}]},{name:"Fastify",slug:"fastify",category:"backend",signals:[{type:"dependency",key:"fastify"}]},{name:"Hono",slug:"hono",category:"backend",signals:[{type:"dependency",key:"hono"}]},{name:"Elysia",slug:"elysia",category:"backend",signals:[{type:"dependency",key:"elysia"}]},{name:"NestJS",slug:"nestjs",category:"backend",signals:[{type:"dependency",key:"@nestjs/core"}]},{name:"Koa",slug:"koa",category:"backend",signals:[{type:"dependency",key:"koa"}]},{name:"Django",slug:"django",category:"backend",signals:[{type:"file",pattern:"manage.py"},{type:"file",pattern:"settings.py"}]},{name:"Flask",slug:"flask",category:"backend",signals:[{type:"file",pattern:"app.py"}]},{name:"FastAPI",slug:"fastapi",category:"backend",signals:[{type:"file",pattern:"main.py"}]},{name:"Rails",slug:"rails",category:"backend",signals:[{type:"file",pattern:"Gemfile"},{type:"file",pattern:"config/routes.rb"}]},{name:"Spring Boot",slug:"spring",category:"backend",signals:[{type:"file",pattern:"pom.xml"},{type:"file",pattern:"build.gradle"}]},{name:"Prisma",slug:"prisma",category:"database",signals:[{type:"dependency",key:"prisma"},{type:"devDependency",key:"prisma"},{type:"file",pattern:"prisma/schema.prisma"}]},{name:"Drizzle",slug:"drizzle",category:"database",signals:[{type:"dependency",key:"drizzle-orm"},{type:"file",pattern:"drizzle.config.*"}]},{name:"TypeORM",slug:"typeorm",category:"database",signals:[{type:"dependency",key:"typeorm"}]},{name:"Mongoose",slug:"mongoose",category:"database",signals:[{type:"dependency",key:"mongoose"}]},{name:"Vite",slug:"vite",category:"build",signals:[{type:"dependency",key:"vite"},{type:"devDependency",key:"vite"},{type:"file",pattern:"vite.config.*"}]},{name:"webpack",slug:"webpack",category:"build",signals:[{type:"dependency",key:"webpack"},{type:"devDependency",key:"webpack"},{type:"file",pattern:"webpack.config.*"}]},{name:"esbuild",slug:"esbuild",category:"build",signals:[{type:"dependency",key:"esbuild"},{type:"devDependency",key:"esbuild"}]},{name:"Turbopack",slug:"turbopack",category:"build",signals:[{type:"file",pattern:"turbo.json"}]},{name:"Jest",slug:"jest",category:"testing",signals:[{type:"devDependency",key:"jest"},{type:"file",pattern:"jest.config.*"}]},{name:"Vitest",slug:"vitest",category:"testing",signals:[{type:"devDependency",key:"vitest"}]},{name:"Playwright",slug:"playwright",category:"testing",signals:[{type:"devDependency",key:"@playwright/test"},{type:"file",pattern:"playwright.config.*"}]},{name:"Cypress",slug:"cypress",category:"testing",signals:[{type:"devDependency",key:"cypress"},{type:"file",pattern:"cypress.config.*"}]},{name:"Turborepo",slug:"turborepo",category:"monorepo",signals:[{type:"devDependency",key:"turbo"},{type:"file",pattern:"turbo.json"}]},{name:"Nx",slug:"nx",category:"monorepo",signals:[{type:"devDependency",key:"nx"},{type:"file",pattern:"nx.json"}]},{name:"Lerna",slug:"lerna",category:"monorepo",signals:[{type:"devDependency",key:"lerna"},{type:"file",pattern:"lerna.json"}]},{name:"MCP SDK",slug:"mcp",category:"ai",signals:[{type:"dependency",key:"@modelcontextprotocol/sdk"}]},{name:"Anthropic SDK",slug:"anthropic",category:"ai",signals:[{type:"dependency",key:"@anthropic-ai/sdk"}]},{name:"OpenAI SDK",slug:"openai",category:"ai",signals:[{type:"dependency",key:"openai"}]},{name:"LangChain",slug:"langchain",category:"ai",signals:[{type:"dependency",key:"langchain"}]},{name:"Vercel",slug:"vercel",category:"hosting",signals:[{type:"file",pattern:"vercel.json"}]},{name:"Netlify",slug:"netlify",category:"hosting",signals:[{type:"file",pattern:"netlify.toml"}]},{name:"Docker",slug:"docker",category:"hosting",signals:[{type:"file",pattern:"Dockerfile"},{type:"file",pattern:"docker-compose.yml"}]},{name:"Cloudflare Workers",slug:"cloudflare",category:"hosting",signals:[{type:"file",pattern:"wrangler.toml"},{type:"dependency",key:"wrangler"}]},{name:"GitHub Actions",slug:"github-actions",category:"cicd",signals:[{type:"file",pattern:".github/workflows/*.yml"}]},{name:"Commander.js",slug:"commander",category:"cli",signals:[{type:"dependency",key:"commander"}]}];function Vq($){let Z=P($,"Cargo.toml");if(!F(Z))return null;try{let X=r(Z,"utf-8").match(/^\s*\[package\][\s\S]*?^\s*name\s*=\s*"([^"]+)"/m);return X?X[1]:null}catch{return null}}function Wq($){let Z=P($,"Cargo.toml");if(!F(Z))return!1;try{let U=r(Z,"utf-8");return/^\s*\[\[bin\]\]/m.test(U)}catch{return!1}}function Lq($,Z){if(Z?.keywords?.some((X)=>/^sdk(?:\s|-|$)|\-sdk$/i.test(X)))return'package.json keywords contains "sdk"';if(Z?.name&&/(?:^|[-_/])sdk(?:[-_/]|$)/i.test(Z.name))return`package.json name "${Z.name}" → sdk`;let U=Vq($);if(U&&/(?:^|[-_])sdk(?:[-_]|$)/i.test(U))return`Cargo.toml name "${U}" → sdk`;return null}function Oq($){let Z=["manifest.json","public/manifest.json","src/manifest.json","app/manifest.json","extension/manifest.json","dist/manifest.json"];for(let U of Z){let X=P($,U);if(!F(X))continue;try{let z=JSON.parse(r(X,"utf-8"));if(typeof z.manifest_version==="number")return`${U} manifest_version ${z.manifest_version} (browser extension)`}catch{}}return null}function _q($){let Z=/(numpy|pandas|jupyter|scikit-learn|sklearn|pytorch|tensorflow|matplotlib|scipy)/i,U=P($,"pyproject.toml");if(F(U))try{let Q=r(U,"utf-8").match(Z);if(Q)return`pyproject.toml depends on ${Q[1]}`}catch{}let X=P($,"requirements.txt");if(F(X))try{let Q=r(X,"utf-8").match(Z);if(Q)return`requirements.txt contains ${Q[1]}`}catch{}return null}function Dq($,Z){let U=["react-native","expo","@capacitor/core","@ionic/core"];if(Z){for(let X of U)if(Z.dependencies?.[X]||Z.devDependencies?.[X])return`${X} dependency`}if(F(P($,"ios"))&&F(P($,"android")))return"ios/ + android/ dirs";return null}function Iq($,Z){let U=P($,"Cargo.toml");if(F(U))try{let z=r(U,"utf-8");if(/crate-type\s*=\s*\[[^\]]*"cdylib"/.test(z))return'Cargo.toml crate-type = ["cdylib"]';if(/wasm-bindgen|wasm-pack/i.test(z))return"Cargo.toml wasm-bindgen/wasm-pack"}catch{}let X=P($,"build.zig");if(F(X))try{let z=r(X,"utf-8");if(/\.wasm\b|wasm32|setOutputFormat\(\.wasm/i.test(z))return"build.zig wasm target"}catch{}if(Z?.keywords?.some((z)=>/^wasm(?:-|$)|webassembly/i.test(z)))return'package.json keywords contains "wasm"';return null}function Rq($,Z){if(!F(P($,"index.html")))return null;if(Z?.dependencies||Z?.devDependencies){let U={...Z.dependencies??{},...Z.devDependencies??{}};if(["react","vue","svelte","@sveltejs/kit","next","nuxt","astro","gatsby","solid-js","qwik"].some((z)=>U[z]))return null}return"index.html (vanilla, no frontend framework)"}function Mq($,Z){if(Z?.name&&/specification|^@.*\/spec/i.test(Z.name))return`package name "${Z.name}" → documentation`;if(Z?.keywords?.some((U)=>/^(specification|format-spec|standard)$/i.test(U)))return'package keywords contains "specification"';if(Z?.files&&Z.files.length>0){let U=/^(dist|src|lib|build|bin)\/|\.(js|ts|tsx|jsx|mjs|cjs|py|rs|go)$/,X=Z.files.some((Q)=>U.test(Q)),z=Z.files.some((Q)=>/\.(md|MD)|examples?\//.test(Q));if(!X&&z)return"package.json files = docs/examples only (no source)"}return null}function Pq($,Z,U){let X=U.find((z)=>z.slug==="astro"||z.slug==="gatsby");if(X)return`${X.name} (static-site framework)`;if(Z?.keywords?.some((z)=>/^(website|marketing|landing|brochure|portfolio)$/i.test(z)))return'package keywords contains "website"/"marketing"/"landing"';return null}function Fq($,Z){if(!Z)return null;let U={...Z.dependencies??{},...Z.devDependencies??{}},X=["@clerk/nextjs","@clerk/clerk-react","next-auth","@auth/core","auth0","@auth0/nextjs-auth0"],z=["stripe","@stripe/stripe-js","lemonsqueezy"],Q=X.some((q)=>U[q]),J=z.some((q)=>U[q]);if(Q&&J)return"auth + payment dependencies";return null}function Tq($,Z,U){if(Z?.keywords?.some((Q)=>/mcpaas/i.test(Q)))return'package keywords contains "mcpaas"';if(Z?.name&&/mcpaas/i.test(Z.name))return`package name "${Z.name}" → mcpaas`;let X=U.some((Q)=>Q.slug==="mcp"),z=U.some((Q)=>Q.category==="database");if(X&&z&&Z?.dependencies&&Object.keys(Z.dependencies).length>10)return"MCP + database + complex deps (platform shape)";return null}function Kq($,Z){if(!Z?.private)return null;if(!(!!Z.workspaces||F(P($,"pnpm-workspace.yaml"))))return null;return"private workspace + multi-package"}function L0($){let Z=P($,"package.json");if(!F(Z))return null;try{return JSON.parse(r(Z,"utf-8"))}catch{return null}}function Aq($,Z){if(!Z.includes("*"))return F(P($,Z));let U=Z.split("/");if(U.length===1){let q=Z.split("*")[0];try{return S6($).some((H)=>H.startsWith(q))}catch{return!1}}let X=P($,...U.slice(0,-1)),z=U[U.length-1],Q=z.split("*")[0],J=z.split("*")[1]||"";try{return S6(X).some((q)=>q.startsWith(Q)&&q.endsWith(J))}catch{return!1}}function Nq($,Z,U){switch($.type){case"dependency":return!!Z?.dependencies?.[$.key];case"devDependency":return!!Z?.devDependencies?.[$.key];case"file":return Aq(U,$.pattern);default:return!1}}function f2($){let Z=L0($);return j6.map((U)=>{let z=U.signals.filter((Q)=>Nq(Q,Z,$)).length/U.signals.length;return{name:U.name,slug:U.slug,category:U.category,confidence:z}}).filter((U)=>U.confidence>0).sort((U,X)=>X.confidence-U.confidence)}function E6($){let Z=L0($);if(Z?.devDependencies?.typescript||Z?.dependencies?.typescript)return"TypeScript";if(F(P($,"tsconfig.json")))return"TypeScript";if(F(P($,"Cargo.toml")))return"Rust";if(F(P($,"go.mod")))return"Go";if(F(P($,"pyproject.toml"))||F(P($,"setup.py")))return"Python";if(F(P($,"Gemfile")))return"Ruby";if(F(P($,"pom.xml"))||F(P($,"build.gradle")))return"Java";if(F(P($,"Package.swift")))return"Swift";if(F(P($,"build.zig")))return"Zig";if(F(P($,"pubspec.yaml")))return"Dart";if(Z)return"JavaScript";return"Unknown"}function g6($){let Z=L0($),U=f2($),X=[],z=Mq($,Z);if(z)return X.push(z),{type:"documentation",found:X};let Q=Lq($,Z);if(Q)return X.push(Q),{type:"sdk",found:X};let J=Oq($);if(J)return X.push(J),{type:"extension",found:X};let q=Tq($,Z,U);if(q)return X.push(q),{type:"mcpaas",found:X};let H=Fq($,Z);if(H)return X.push(H),{type:"saas",found:X};let G=Iq($,Z);if(G)return X.push(G),{type:"wasm",found:X};let W=J9($);if(W)return X.push(W.found),{type:W.appType,found:X};let Y=Dq($,Z);if(Y)return X.push(Y),{type:"mobile",found:X};if(U.some((D)=>D.slug==="mcp"))return X.push("MCP SDK signal"),{type:"mcp",found:X};if(Z?.bin)return X.push("package.json bin"),{type:"cli",found:X};if(Wq($))return X.push("Cargo.toml [[bin]]"),{type:"cli",found:X};if(F(P($,"build.zig"))){if(X.push("build.zig"),F(P($,"src/main.zig")))return X.push("src/main.zig"),{type:"cli",found:X};if(F(P($,"src/root.zig")))return X.push("src/root.zig"),{type:"library",found:X}}let O=U.some((D)=>D.slug==="svelte"||D.slug==="sveltekit");if(Z?.private===!0&&(F(P($,"pnpm-workspace.yaml"))||Z?.workspaces!==void 0)&&O)return X.push("private workspace","Svelte"),{type:"framework",found:X};if(O)return X.push("Svelte/SvelteKit"),{type:"svelte",found:X};let V=U.some((D)=>D.category==="frontend"),L=U.some((D)=>D.category==="backend");if(Z?.private&&(Z.workspaces||F(P($,"pnpm-workspace.yaml")))&&V&&L)return X.push("private workspace + frontend + backend frameworks"),{type:"enterprise",found:X};let R=Kq($,Z);if(R)return X.push(R),{type:"monorepo-root",found:X};let M=Pq($,Z,U);if(M)return X.push(M),{type:"website",found:X};if(U.some((D)=>D.slug==="nextjs"||D.slug==="nuxt"))return X.push(U.find((D)=>D.slug==="nextjs")?"Next.js":"Nuxt"),{type:"fullstack",found:X};let A=U.some((D)=>D.category==="frontend"),K=U.some((D)=>D.category==="backend");if(A&&K)return X.push("frontend framework","backend framework"),{type:"fullstack",found:X};if(A)return X.push("frontend framework"),{type:"frontend",found:X};if(K)return X.push("backend framework"),{type:"backend",found:X};let N=_q($);if(N)return X.push(N),{type:"data-science",found:X};let C=Rq($,Z);if(C)return X.push(C),{type:"html",found:X};if(Z?.main&&!Z?.bin)return X.push("package.json main (no bin)"),{type:"library",found:X};return X.push("no classifying signals — fallback"),{type:"library",found:X}}function f6($){if(F(P($,"bunfig.toml")))return"Bun";if(F(P($,"deno.json"))||F(P($,"deno.jsonc")))return"Deno";if(L0($))return"Node.js";if(F(P($,"Cargo.toml")))return"Rust";if(F(P($,"go.mod")))return"Go";if(F(P($,"pubspec.yaml")))return"Dart";return"Unknown"}function y6($){if(F(P($,"pubspec.yaml")))return"pub";if(F(P($,"bun.lockb"))||F(P($,"bun.lock")))return"bun";if(F(P($,"pnpm-lock.yaml")))return"pnpm";if(F(P($,"yarn.lock")))return"yarn";if(F(P($,"package-lock.json")))return"npm";return"npm"}function x6($){if(F(P($,".github/workflows")))return"GitHub Actions";if(F(P($,".gitlab-ci.yml")))return"GitLab CI";if(F(P($,".circleci")))return"CircleCI";if(F(P($,"Jenkinsfile")))return"Jenkins";return null}function h6($){if(F(P($,"vercel.json")))return"Vercel";if(F(P($,"netlify.toml")))return"Netlify";if(F(P($,"wrangler.toml")))return"Cloudflare";if(F(P($,"Dockerfile")))return"Docker";if(F(P($,"fly.toml")))return"Fly.io";if(F(P($,"render.yaml")))return"Render";return null}function u6($){let Z=P($,"svelte.config.js");if(!F(Z))return null;try{let X=r(Z,"utf-8").match(/@sveltejs\/adapter-(\w+)/);if(X){let z=X[1];switch(z){case"vercel":return"Vercel";case"node":return"Node";case"static":return"Static";case"cloudflare":return"Cloudflare";case"netlify":return"Netlify";case"auto":return"Auto";default:return z}}return null}catch{return null}}function k6($){let Z=L0($);if(Z?.devDependencies?.vite||Z?.dependencies?.vite)return"Vite";if(Z?.devDependencies?.webpack||Z?.dependencies?.webpack)return"webpack";if(Z?.devDependencies?.esbuild||Z?.dependencies?.esbuild)return"esbuild";if(F(P($,"tsconfig.json"))&&Z?.devDependencies?.typescript)return"TypeScript (tsc)";return null}function v6($){return["package.json","Cargo.toml","pyproject.toml","go.mod","build.zig","build.zig.zon","src/index.ts","src/index.js","src/main.ts","src/cli.ts","src/main.rs","src/lib.rs","src/main.zig","src/root.zig","src/__init__.py","main.py","__main__.py","main.go","cmd/main.go","README.md","SPECIFICATION.md","BINARY-FORMAT.md","tsconfig.json","wrangler.toml","vercel.json"].filter((U)=>F(P($,U)))}function m6($,Z){let U={};if(Z?.scripts){for(let X of["build","test","lint","dev","start"])if(Z.scripts[X]){let z=F(P($,"bun.lock"))||F(P($,"bun.lockb"))?"bun run":"npm run";U[X]=`${z} ${X}`}}if(F(P($,"Cargo.toml"))){if(!U.build)U.build="cargo build --release";if(!U.test)U.test="cargo test";if(!U.lint)U.lint="cargo clippy"}if(F(P($,"build.zig"))){if(!U.build)U.build="zig build";if(!U.test)U.test="zig build test"}if(F(P($,"go.mod"))){if(!U.build)U.build="go build ./...";if(!U.test)U.test="go test ./..."}if(F(P($,"pyproject.toml"))||F(P($,"pytest.ini"))){if(!U.test)U.test="pytest"}return U}function p6($,Z,U,X){let z=[];if(X&&X!=="Unknown")z.push(X);let Q=new Set(["frontend","backend","database","build","css","state","monorepo"]);for(let J of U)if(Q.has(J.category))z.push(J.name);if(F(P($,"bunfig.toml")))z.push("Bun");else if(F(P($,"deno.json"))||F(P($,"deno.jsonc")))z.push("Deno");if(z.length<3&&Z?.dependencies){let J=Object.keys(Z.dependencies).slice(0,5);for(let q of J)if(!z.some((H)=>H.toLowerCase().includes(q.toLowerCase())))z.push(q)}return z}function l6($){let Z=L0($),U=f2($),X=E6($),z=g6($),Q=z.type,J=f6($),q=y6($),H=x6($),G=h6($),W=k6($),Y=U.find((j)=>j.category==="frontend"),B=U.find((j)=>j.category==="css"),O=U.find((j)=>j.category==="ui"),_=U.find((j)=>j.category==="state"),V=U.find((j)=>j.category==="backend"),L=U.find((j)=>j.category==="database"),R=_0[Q]||_0.library,M=Q==="framework",T=U.some((j)=>j.slug==="svelte"||j.slug==="sveltekit"),A=M&&T?"svelte":M?null:null,K=Q==="svelte"||A==="svelte",N=K?u6($):null,C=K&&U.some((j)=>j.slug==="sveltekit"),D=new Set(["css_framework","ui_library","database","connection","hosting"]),w={},p=y.filter((j)=>j.path.startsWith("stack."));for(let j of p){let S=j.path.replace("stack.","");if(!R.includes(j.category)){w[S]="slotignored";continue}if(M&&D.has(S)){w[S]="slotignored";continue}switch(S){case"frontend":w[S]=Y?.name??(Q==="cli"?"CLI":"");break;case"css_framework":w[S]=B?.name??"";break;case"ui_library":w[S]=O?.name??"";break;case"state_management":w[S]=K?_?.name??"Runes":_?.name??"";break;case"backend":w[S]=K?C?"SvelteKit":V?.name??"":V?.name??"";break;case"api_type":w[S]=C?"Server Routes":"";break;case"runtime":w[S]=J!=="Unknown"?J:"";break;case"database":w[S]=L?.name??"";break;case"connection":w[S]=L?.name??"";break;case"hosting":if(K&&N)w[S]=N;else w[S]=G??"";break;case"build":w[S]=K?"Vite":W??"";break;case"cicd":w[S]=H??"";break;case"package_manager":w[S]=q;break;default:w[S]="";break}}let l={},E=y.filter((j)=>j.path.startsWith("monorepo."));for(let j of E){let S=j.path.replace("monorepo.","");if(!R.includes(j.category))l[S]="slotignored";else l[S]=""}let g0={name:Z?.name??$.split("/").pop()??"project",goal:Z?.description??"",main_language:X,type:Q};if(M&&A)g0.framework=A;let h2=p6($,Z,U,X),u2=v6($),k2=m6($,Z),V$={faf_version:"2.5.0",project:g0,stack:w,human_context:{who:"",what:Z?.description??"",why:"",where:"",when:"",how:""},monorepo:l,_meta:{found:z.found}};if(h2.length>0)V$.tech_stack=h2;if(u2.length>0)V$.key_files=u2;if(Object.keys(k2).length>0)V$.commands=k2;return V$}import{existsSync as bq,readFileSync as Cq}from"fs";import{join as jq}from"path";var d6={MIN_LENGTH:8,MAX_LENGTH:280},wq=[/^(see|see\s+the?)\s+readme/i,/^(tbd|todo|fixme|coming\s+soon)\b/i,/^(software|application|app|project|tool|library|framework)\.?$/i,/^(for\s+users|for\s+developers)\.?$/i,/^(description|goal|name|title)\.?$/i,/^lorem\s+ipsum/i,/^example(\s+\w+)?\.?$/i];function m($){let Z=$.trim();if(Z.length<d6.MIN_LENGTH)return!1;if(Z.length>d6.MAX_LENGTH)return!1;if(wq.some((U)=>U.test(Z)))return!1;if(/^[\s|\-*+]/.test(Z))return!1;if(Z.split(`
218
+ `).length>4)return!1;return!0}function Sq($){let Z=$.split(`
219
+ `),U=0;while(U<Z.length&&/^(#\s|$)/.test(Z[U].trim()))U++;while(U<Z.length){let X=Z[U].trim();if(/^\[!\[/.test(X)){U++;continue}if(/^!\[/.test(X)){U++;continue}if(/^<img\s/i.test(X)){U++;continue}if(X===""){U++;continue}break}return Z.slice(U).join(`
220
+ `)}function Eq($){let U=Sq($).split(`
221
+ `),X=[];for(let z of U){let Q=z.trim();if(Q===""){if(X.length>0)break;continue}if(/^(#|>|```|---|\||\s*[-*+]\s|\d+\.\s)/.test(Q))break;if(/^\*\*[^*]+\*\*\s*$/.test(Q)&&X.length===0)continue;X.push(Q)}if(X.length===0)return null;return X.join(" ").trim()}function O0($,Z){let U=$.split(`
222
+ `),X=0;while(X<U.length){let Q=U[X].trim().match(/^(#{1,6})\s+(.+)$/);if(Q&&Z.test(Q[2])){let J=Q[1].length,q=[];X++;while(X<U.length){let H=U[X].trim(),G=H.match(/^(#{1,6})\s+/);if(G&&G[1].length<=J)break;if(H===""){if(q.length>0)break;X++;continue}if(/^(>|```|---|\||\s*[-*+]\s|\d+\.\s)/.test(H))break;q.push(H),X++}if(q.length===0)return null;return q.join(" ").trim()}X++}return null}function gq($){let Z=O0($,/^(use\s+cases?|goal)\b/i);if(Z&&m(Z))return Z;let U=Eq($);if(U&&m(U))return U;return}function fq($){let Z=O0($,/^(about|description|overview|what(\s+is\s+this)?)\b/i);if(Z&&m(Z))return Z;return}function yq($){let Z=O0($,/^(audience|users?|for\s+whom|who(\s+is\s+this\s+for)?)\b/i);if(Z&&m(Z))return Z;return}function xq($){let Z=O0($,/^(why|motivation|problem|rationale)\b/i);if(Z&&m(Z))return Z;return}function hq($){let Z=O0($,/^(deployment|where(\s+it\s+runs)?|hosting)\b/i);if(Z&&m(Z))return Z;return}function uq($){let Z=O0($,/^(status|history|timeline|since|launched)\b/i);if(Z&&m(Z))return Z;return}function kq($){let Z=O0($,/^(architecture|how(\s+it\s+works)?|approach|design)\b/i);if(Z&&m(Z))return Z;return}function y2($){let Z=["README.md","README.MD","Readme.md","readme.md"],U=null;for(let O of Z){let _=jq($,O);if(bq(_)){U=_;break}}if(!U)return{};let X;try{X=Cq(U,"utf-8")}catch{return{}}let z={},Q=gq(X);if(Q)z.project={goal:Q};let J={},q=fq(X);if(q)J.what=q;let H=yq(X);if(H)J.who=H;let G=xq(X);if(G)J.why=G;let W=hq(X);if(W)J.where=W;let Y=uq(X);if(Y)J.when=Y;let B=kq(X);if(B)J.how=B;if(Object.keys(J).length>0)z.human_context=J;return z}import{existsSync as vq,readFileSync as mq}from"fs";import{join as pq}from"path";function lq($,Z){let U=$.split(`
223
+ `),X=!1;for(let z of U){let Q=z.trim();if(/^\[/.test(Q)){X=Q==="[package]";continue}if(!X)continue;let J=Q.match(new RegExp(`^${Z}\\s*=\\s*(.+)$`));if(J){let q=J[1].trim();q=q.replace(/\s*#.*$/,"").trim();let H=q.match(/^"((?:[^"\\]|\\.)*)"$/)||q.match(/^'((?:[^'\\]|\\.)*)'$/);if(H)return H[1];return q}}return null}function x2($){let Z=pq($,"Cargo.toml");if(!vq(Z))return{};let U;try{U=mq(Z,"utf-8")}catch{return{}}let X=lq(U,"description");if(X&&m(X))return{project:{goal:X}};return{}}function dq($,Z){let U={project:{...Z.project??{},...$.project??{}},human_context:{...Z.human_context??{},...$.human_context??{}}};if(U.project&&Object.keys(U.project).length===0)delete U.project;if(U.human_context&&Object.keys(U.human_context).length===0)delete U.human_context;return U}function c6($){return dq(y2($),x2($))}function cq($){let Z=l6($),U=c6($),X=q9(Z,U);aq(X);let z=q9(X,E2($));return q9(z,{human_context:g2($)})}function aq($){let Z=$.project?.type??"library",U=_0[Z]||_0.library;for(let X of y){if(U.includes(X.category))continue;let[z,Q]=X.path.split(".");if(z==="stack"&&$.stack)$.stack[Q]="slotignored";if(z==="monorepo"&&$.monorepo)$.monorepo[Q]="slotignored"}}function q9($,Z){let U={...$};for(let[X,z]of Object.entries(Z)){let Q=U[X];if(y0(Q))U[X]=z;else if(typeof z==="object"&&z!==null&&!Array.isArray(z)&&typeof Q==="object"&&Q!==null&&!Array.isArray(Q))U[X]=q9(Q,z)}return U}export{PJ as writeServerCard,WJ as writeProjectHtml,H8 as validateFaf,E2 as turboCatSlots,A6 as turboCatScan,o6 as slotsByCategory,I6 as seedSixWsFromGoal,L9 as scoreFafYaml,g2 as relentlessContext,MJ as registryName,RJ as registryMeta,$6 as readFafRaw,zJ as readFaf,TJ as questionForSlot,gJ as publicQuestions,Q9 as normalizeAnswer,W9 as kernel,y0 as isPlaceholder,KJ as interviewForMissing,fJ as gradeAnswers,u0 as getTier,$8 as getNextTier,G6 as generateServerCard,Q6 as generateProjectHtml,Z6 as findFafFile,N2 as fafContextBlock,m2 as enrichScore,EJ as deriveQuestionSet,bJ as buildTableOf8,yJ as buildReceipt,cq as assembleFreshFaf,F6 as answersMatch,a as TIERS,_6 as STACK_INTERVIEW,H9 as SLOT_BY_PATH,y as SLOTS,w2 as SIX_WS_INTERVIEW,Y6 as REGISTRY_PUBLISHER_KEY,W$ as PLACEHOLDERS,O6 as INTERVIEW_VERSION,FJ as INTERVIEW_PATHS,D6 as INTERVIEW_BY_PATH,z9 as INTERVIEW,h0 as FAF_HEX,e6 as ENTERPRISE_SLOTS,b2 as BENCH_VERSION,t6 as BASE_SLOTS,P6 as ALIAS_GROUPS};
222
224
 
223
- //# debugId=8D9B391973CB312C64756E2164756E21
225
+ //# debugId=0822C666AF8A5DC564756E2164756E21
224
226
  //# sourceMappingURL=index.js.map