@kelceyp/swic 0.2.8 → 0.2.10

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.
@@ -0,0 +1,39 @@
1
+ #!/usr/bin/env node
2
+ import { spawn } from "child_process";
3
+ import { fileURLToPath } from "url";
4
+ import { dirname, resolve } from "path";
5
+ import { existsSync } from "fs";
6
+
7
+ const __filename = fileURLToPath(import.meta.url);
8
+ const __dirname = dirname(__filename);
9
+
10
+ // package root when this file is installed at <pkg>/bin/swic-mcp.js
11
+ const pkgRoot = resolve(__dirname, "..");
12
+ const serverJs = resolve(pkgRoot, "dist/server/Server.js");
13
+
14
+ if (!existsSync(serverJs)) {
15
+ console.error(`[swic-mcp] server bundle not found at ${serverJs}`);
16
+ console.error(`[swic-mcp] Did you run the build? Expecting dist/server/Server.js in the published package.`);
17
+ process.exit(1);
18
+ }
19
+
20
+ // allow overriding bun path if needed (e.g. CLAUDE env)
21
+ const bunBin =
22
+ process.env.BUN_BIN ||
23
+ process.env.BUN ||
24
+ process.env.BUN_PATH ||
25
+ "bun";
26
+
27
+ const child = spawn(bunBin, [serverJs, ...process.argv.slice(2)], {
28
+ stdio: "inherit",
29
+ });
30
+
31
+ child.on("exit", (code, signal) => {
32
+ if (signal) process.kill(process.pid, signal);
33
+ else process.exit(code ?? 1);
34
+ });
35
+
36
+ child.on("error", (err) => {
37
+ console.error("[swic-mcp] failed to spawn bun:", err);
38
+ process.exit(1);
39
+ });
@@ -1,4 +1,4 @@
1
- #!/usr/bin/env node
1
+ #!/usr/bin/env bun
2
2
  var iO=Object.create;var{getPrototypeOf:oO,defineProperty:aK,getOwnPropertyNames:cO}=Object;var LO=Object.prototype.hasOwnProperty;var IK=(_,q,f)=>{f=_!=null?iO(oO(_)):{};let K=q||!_||!_.__esModule?aK(f,"default",{value:_,enumerable:!0}):f;for(let $ of cO(_))if(!LO.call(K,$))aK(K,$,{get:()=>_[$],enumerable:!0});return K};var p=(_,q)=>()=>(q||_((q={exports:{}}).exports,q),q.exports);var _7=(_,q)=>{for(var f in q)aK(_,f,{get:q[f],enumerable:!0,configurable:!0,set:(K)=>q[f]=()=>K})};var b_=(_,q)=>()=>(_&&(q=_(_=0)),q);var a_=import.meta.require;var n7=p(($$,l7)=>{(function(_,q){typeof $$==="object"&&typeof l7!=="undefined"?q($$):typeof define==="function"&&define.amd?define(["exports"],q):q(_.URI=_.URI||{})})($$,function(_){function q(){for(var G=arguments.length,Z=Array(G),b=0;b<G;b++)Z[b]=arguments[b];if(Z.length>1){Z[0]=Z[0].slice(0,-1);var E=Z.length-1;for(var d=1;d<E;++d)Z[d]=Z[d].slice(1,-1);return Z[E]=Z[E].slice(1),Z.join("")}else return Z[0]}function f(G){return"(?:"+G+")"}function K(G){return G===void 0?"undefined":G===null?"null":Object.prototype.toString.call(G).split(" ").pop().split("]").shift().toLowerCase()}function $(G){return G.toUpperCase()}function P(G){return G!==void 0&&G!==null?G instanceof Array?G:typeof G.length!=="number"||G.split||G.setInterval||G.call?[G]:Array.prototype.slice.call(G):[]}function j(G,Z){var b=G;if(Z)for(var E in Z)b[E]=Z[E];return b}function v(G){var Z="[A-Za-z]",b="[\\x0D]",E="[0-9]",d="[\\x22]",x=q(E,"[A-Fa-f]"),fq="[\\x0A]",Yq="[\\x20]",Wq=f(f("%[EFef]"+x+"%"+x+x+"%"+x+x)+"|"+f("%[89A-Fa-f]"+x+"%"+x+x)+"|"+f("%"+x+x)),Cq="[\\:\\/\\?\\#\\[\\]\\@]",wq="[\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\=]",mq=q(Cq,wq),pq=G?"[\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]":"[]",uq=G?"[\\uE000-\\uF8FF]":"[]",Tq=q(Z,E,"[\\-\\.\\_\\~]",pq),rq=f(Z+q(Z,E,"[\\+\\-\\.]")+"*"),hq=f(f(Wq+"|"+q(Tq,wq,"[\\:]"))+"*"),k8=f(f("25[0-5]")+"|"+f("2[0-4]"+E)+"|"+f("1"+E+E)+"|"+f("[1-9]"+E)+"|"+E),Fq=f(f("25[0-5]")+"|"+f("2[0-4]"+E)+"|"+f("1"+E+E)+"|"+f("0?[1-9]"+E)+"|0?0?"+E),f_=f(Fq+"\\."+Fq+"\\."+Fq+"\\."+Fq),Jq=f(x+"{1,4}"),Qq=f(f(Jq+"\\:"+Jq)+"|"+f_),$_=f(f(Jq+"\\:")+"{6}"+Qq),r_=f("\\:\\:"+f(Jq+"\\:")+"{5}"+Qq),Z8=f(f(Jq)+"?\\:\\:"+f(Jq+"\\:")+"{4}"+Qq),E_=f(f(f(Jq+"\\:")+"{0,1}"+Jq)+"?\\:\\:"+f(Jq+"\\:")+"{3}"+Qq),pf=f(f(f(Jq+"\\:")+"{0,2}"+Jq)+"?\\:\\:"+f(Jq+"\\:")+"{2}"+Qq),R6=f(f(f(Jq+"\\:")+"{0,3}"+Jq)+"?\\:\\:"+Jq+"\\:"+Qq),E6=f(f(f(Jq+"\\:")+"{0,4}"+Jq)+"?\\:\\:"+Qq),D8=f(f(f(Jq+"\\:")+"{0,5}"+Jq)+"?\\:\\:"+Jq),y8=f(f(f(Jq+"\\:")+"{0,6}"+Jq)+"?\\:\\:"),g_=f([$_,r_,Z8,E_,pf,R6,E6,D8,y8].join("|")),i8=f(f(Tq+"|"+Wq)+"+"),gK=f(g_+"\\%25"+i8),X8=f(g_+f("\\%25|\\%(?!"+x+"{2})")+i8),EO=f("[vV]"+x+"+\\."+q(Tq,wq,"[\\:]")+"+"),gO=f("\\["+f(X8+"|"+g_+"|"+EO)+"\\]"),U4=f(f(Wq+"|"+q(Tq,wq))+"*"),lf=f(gO+"|"+f_+"(?!"+U4+")|"+U4),nf=f(E+"*"),F4=f(f(hq+"@")+"?"+lf+f("\\:"+nf)+"?"),Rf=f(Wq+"|"+q(Tq,wq,"[\\:\\@]")),dO=f(Rf+"*"),Q4=f(Rf+"+"),aO=f(f(Wq+"|"+q(Tq,wq,"[\\@]"))+"+"),d_=f(f("\\/"+dO)+"*"),o8=f("\\/"+f(Q4+d_)+"?"),dK=f(aO+d_),g6=f(Q4+d_),c8="(?!"+Rf+")",cN=f(d_+"|"+o8+"|"+dK+"|"+g6+"|"+c8),L8=f(f(Rf+"|"+q("[\\/\\?]",uq))+"*"),Ef=f(f(Rf+"|[\\/\\?]")+"*"),q7=f(f("\\/\\/"+F4+d_)+"|"+o8+"|"+g6+"|"+c8),IO=f(rq+"\\:"+q7+f("\\?"+L8)+"?"+f("\\#"+Ef)+"?"),DO=f(f("\\/\\/"+F4+d_)+"|"+o8+"|"+dK+"|"+c8),yO=f(DO+f("\\?"+L8)+"?"+f("\\#"+Ef)+"?"),LN=f(IO+"|"+yO),tN=f(rq+"\\:"+q7+f("\\?"+L8)+"?"),eN="^("+rq+")\\:"+f(f("\\/\\/("+f("("+hq+")@")+"?("+lf+")"+f("\\:("+nf+")")+"?)")+"?("+d_+"|"+o8+"|"+g6+"|"+c8+")")+f("\\?("+L8+")")+"?"+f("\\#("+Ef+")")+"?$",xN="^(){0}"+f(f("\\/\\/("+f("("+hq+")@")+"?("+lf+")"+f("\\:("+nf+")")+"?)")+"?("+d_+"|"+o8+"|"+dK+"|"+c8+")")+f("\\?("+L8+")")+"?"+f("\\#("+Ef+")")+"?$",sN="^("+rq+")\\:"+f(f("\\/\\/("+f("("+hq+")@")+"?("+lf+")"+f("\\:("+nf+")")+"?)")+"?("+d_+"|"+o8+"|"+g6+"|"+c8+")")+f("\\?("+L8+")")+"?$",BN="^"+f("\\#("+Ef+")")+"?$",UN="^"+f("("+hq+")@")+"?("+lf+")"+f("\\:("+nf+")")+"?$";return{NOT_SCHEME:new RegExp(q("[^]",Z,E,"[\\+\\-\\.]"),"g"),NOT_USERINFO:new RegExp(q("[^\\%\\:]",Tq,wq),"g"),NOT_HOST:new RegExp(q("[^\\%\\[\\]\\:]",Tq,wq),"g"),NOT_PATH:new RegExp(q("[^\\%\\/\\:\\@]",Tq,wq),"g"),NOT_PATH_NOSCHEME:new RegExp(q("[^\\%\\/\\@]",Tq,wq),"g"),NOT_QUERY:new RegExp(q("[^\\%]",Tq,wq,"[\\:\\@\\/\\?]",uq),"g"),NOT_FRAGMENT:new RegExp(q("[^\\%]",Tq,wq,"[\\:\\@\\/\\?]"),"g"),ESCAPE:new RegExp(q("[^]",Tq,wq),"g"),UNRESERVED:new RegExp(Tq,"g"),OTHER_CHARS:new RegExp(q("[^\\%]",Tq,mq),"g"),PCT_ENCODED:new RegExp(Wq,"g"),IPV4ADDRESS:new RegExp("^("+f_+")$"),IPV6ADDRESS:new RegExp("^\\[?("+g_+")"+f(f("\\%25|\\%(?!"+x+"{2})")+"("+i8+")")+"?\\]?$")}}var w=v(!1),O=v(!0),T=function(){function G(Z,b){var E=[],d=!0,x=!1,fq=void 0;try{for(var Yq=Z[Symbol.iterator](),Wq;!(d=(Wq=Yq.next()).done);d=!0)if(E.push(Wq.value),b&&E.length===b)break}catch(Cq){x=!0,fq=Cq}finally{try{if(!d&&Yq.return)Yq.return()}finally{if(x)throw fq}}return E}return function(Z,b){if(Array.isArray(Z))return Z;else if(Symbol.iterator in Object(Z))return G(Z,b);else throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),Y=function(G){if(Array.isArray(G)){for(var Z=0,b=Array(G.length);Z<G.length;Z++)b[Z]=G[Z];return b}else return Array.from(G)},z=2147483647,H=36,h=1,J=26,k=38,X=700,l=72,N=128,n="-",R=/^xn--/,g=/[^\0-\x7E]/,V=/[\x2E\u3002\uFF0E\uFF61]/g,M={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},C=H-h,a=Math.floor,r=String.fromCharCode;function A(G){throw new RangeError(M[G])}function u(G,Z){var b=[],E=G.length;while(E--)b[E]=Z(G[E]);return b}function m(G,Z){var b=G.split("@"),E="";if(b.length>1)E=b[0]+"@",G=b[1];G=G.replace(V,".");var d=G.split("."),x=u(d,Z).join(".");return E+x}function S(G){var Z=[],b=0,E=G.length;while(b<E){var d=G.charCodeAt(b++);if(d>=55296&&d<=56319&&b<E){var x=G.charCodeAt(b++);if((x&64512)==56320)Z.push(((d&1023)<<10)+(x&1023)+65536);else Z.push(d),b--}else Z.push(d)}return Z}var I=function G(Z){return String.fromCodePoint.apply(String,Y(Z))},D=function G(Z){if(Z-48<10)return Z-22;if(Z-65<26)return Z-65;if(Z-97<26)return Z-97;return H},c=function G(Z,b){return Z+22+75*(Z<26)-((b!=0)<<5)},e=function G(Z,b,E){var d=0;Z=E?a(Z/X):Z>>1,Z+=a(Z/b);for(;Z>C*J>>1;d+=H)Z=a(Z/C);return a(d+(C+1)*Z/(Z+k))},L=function G(Z){var b=[],E=Z.length,d=0,x=N,fq=l,Yq=Z.lastIndexOf(n);if(Yq<0)Yq=0;for(var Wq=0;Wq<Yq;++Wq){if(Z.charCodeAt(Wq)>=128)A("not-basic");b.push(Z.charCodeAt(Wq))}for(var Cq=Yq>0?Yq+1:0;Cq<E;){var wq=d;for(var mq=1,pq=H;;pq+=H){if(Cq>=E)A("invalid-input");var uq=D(Z.charCodeAt(Cq++));if(uq>=H||uq>a((z-d)/mq))A("overflow");d+=uq*mq;var Tq=pq<=fq?h:pq>=fq+J?J:pq-fq;if(uq<Tq)break;var rq=H-Tq;if(mq>a(z/rq))A("overflow");mq*=rq}var hq=b.length+1;if(fq=e(d-wq,hq,wq==0),a(d/hq)>z-x)A("overflow");x+=a(d/hq),d%=hq,b.splice(d++,0,x)}return String.fromCodePoint.apply(String,b)},Q=function G(Z){var b=[];Z=S(Z);var E=Z.length,d=N,x=0,fq=l,Yq=!0,Wq=!1,Cq=void 0;try{for(var wq=Z[Symbol.iterator](),mq;!(Yq=(mq=wq.next()).done);Yq=!0){var pq=mq.value;if(pq<128)b.push(r(pq))}}catch(X8){Wq=!0,Cq=X8}finally{try{if(!Yq&&wq.return)wq.return()}finally{if(Wq)throw Cq}}var uq=b.length,Tq=uq;if(uq)b.push(n);while(Tq<E){var rq=z,hq=!0,k8=!1,Fq=void 0;try{for(var f_=Z[Symbol.iterator](),Jq;!(hq=(Jq=f_.next()).done);hq=!0){var Qq=Jq.value;if(Qq>=d&&Qq<rq)rq=Qq}}catch(X8){k8=!0,Fq=X8}finally{try{if(!hq&&f_.return)f_.return()}finally{if(k8)throw Fq}}var $_=Tq+1;if(rq-d>a((z-x)/$_))A("overflow");x+=(rq-d)*$_,d=rq;var r_=!0,Z8=!1,E_=void 0;try{for(var pf=Z[Symbol.iterator](),R6;!(r_=(R6=pf.next()).done);r_=!0){var E6=R6.value;if(E6<d&&++x>z)A("overflow");if(E6==d){var D8=x;for(var y8=H;;y8+=H){var g_=y8<=fq?h:y8>=fq+J?J:y8-fq;if(D8<g_)break;var i8=D8-g_,gK=H-g_;b.push(r(c(g_+i8%gK,0))),D8=a(i8/gK)}b.push(r(c(D8,0))),fq=e(x,$_,Tq==uq),x=0,++Tq}}}catch(X8){Z8=!0,E_=X8}finally{try{if(!r_&&pf.return)pf.return()}finally{if(Z8)throw E_}}++x,++d}return b.join("")},Hq=function G(Z){return m(Z,function(b){return R.test(b)?L(b.slice(4).toLowerCase()):b})},Pq=function G(Z){return m(Z,function(b){return g.test(b)?"xn--"+Q(b):b})},_q={version:"2.1.0",ucs2:{decode:S,encode:I},decode:L,encode:Q,toASCII:Pq,toUnicode:Hq},kq={};function gq(G){var Z=G.charCodeAt(0),b=void 0;if(Z<16)b="%0"+Z.toString(16).toUpperCase();else if(Z<128)b="%"+Z.toString(16).toUpperCase();else if(Z<2048)b="%"+(Z>>6|192).toString(16).toUpperCase()+"%"+(Z&63|128).toString(16).toUpperCase();else b="%"+(Z>>12|224).toString(16).toUpperCase()+"%"+(Z>>6&63|128).toString(16).toUpperCase()+"%"+(Z&63|128).toString(16).toUpperCase();return b}function iq(G){var Z="",b=0,E=G.length;while(b<E){var d=parseInt(G.substr(b+1,2),16);if(d<128)Z+=String.fromCharCode(d),b+=3;else if(d>=194&&d<224){if(E-b>=6){var x=parseInt(G.substr(b+4,2),16);Z+=String.fromCharCode((d&31)<<6|x&63)}else Z+=G.substr(b,6);b+=6}else if(d>=224){if(E-b>=9){var fq=parseInt(G.substr(b+4,2),16),Yq=parseInt(G.substr(b+7,2),16);Z+=String.fromCharCode((d&15)<<12|(fq&63)<<6|Yq&63)}else Z+=G.substr(b,9);b+=9}else Z+=G.substr(b,3),b+=3}return Z}function x_(G,Z){function b(E){var d=iq(E);return!d.match(Z.UNRESERVED)?E:d}if(G.scheme)G.scheme=String(G.scheme).replace(Z.PCT_ENCODED,b).toLowerCase().replace(Z.NOT_SCHEME,"");if(G.userinfo!==void 0)G.userinfo=String(G.userinfo).replace(Z.PCT_ENCODED,b).replace(Z.NOT_USERINFO,gq).replace(Z.PCT_ENCODED,$);if(G.host!==void 0)G.host=String(G.host).replace(Z.PCT_ENCODED,b).toLowerCase().replace(Z.NOT_HOST,gq).replace(Z.PCT_ENCODED,$);if(G.path!==void 0)G.path=String(G.path).replace(Z.PCT_ENCODED,b).replace(G.scheme?Z.NOT_PATH:Z.NOT_PATH_NOSCHEME,gq).replace(Z.PCT_ENCODED,$);if(G.query!==void 0)G.query=String(G.query).replace(Z.PCT_ENCODED,b).replace(Z.NOT_QUERY,gq).replace(Z.PCT_ENCODED,$);if(G.fragment!==void 0)G.fragment=String(G.fragment).replace(Z.PCT_ENCODED,b).replace(Z.NOT_FRAGMENT,gq).replace(Z.PCT_ENCODED,$);return G}function n_(G){return G.replace(/^0*(.*)/,"$1")||"0"}function Nq(G,Z){var b=G.match(Z.IPV4ADDRESS)||[],E=T(b,2),d=E[1];if(d)return d.split(".").map(n_).join(".");else return G}function Vq(G,Z){var b=G.match(Z.IPV6ADDRESS)||[],E=T(b,3),d=E[1],x=E[2];if(d){var fq=d.toLowerCase().split("::").reverse(),Yq=T(fq,2),Wq=Yq[0],Cq=Yq[1],wq=Cq?Cq.split(":").map(n_):[],mq=Wq.split(":").map(n_),pq=Z.IPV4ADDRESS.test(mq[mq.length-1]),uq=pq?7:8,Tq=mq.length-uq,rq=Array(uq);for(var hq=0;hq<uq;++hq)rq[hq]=wq[hq]||mq[Tq+hq]||"";if(pq)rq[uq-1]=Nq(rq[uq-1],Z);var k8=rq.reduce(function($_,r_,Z8){if(!r_||r_==="0"){var E_=$_[$_.length-1];if(E_&&E_.index+E_.length===Z8)E_.length++;else $_.push({index:Z8,length:1})}return $_},[]),Fq=k8.sort(function($_,r_){return r_.length-$_.length})[0],f_=void 0;if(Fq&&Fq.length>1){var Jq=rq.slice(0,Fq.index),Qq=rq.slice(Fq.index+Fq.length);f_=Jq.join(":")+"::"+Qq.join(":")}else f_=rq.join(":");if(x)f_+="%"+x;return f_}else return G}var H8=/^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\d*))?))?([^?#]*)(?:\?([^#]*))?(?:#((?:.|\n|\r)*))?/i,Dq="".match(/(){0}/)[1]===void 0;function zq(G){var Z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},b={},E=Z.iri!==!1?O:w;if(Z.reference==="suffix")G=(Z.scheme?Z.scheme+":":"")+"//"+G;var d=G.match(H8);if(d){if(Dq){if(b.scheme=d[1],b.userinfo=d[3],b.host=d[4],b.port=parseInt(d[5],10),b.path=d[6]||"",b.query=d[7],b.fragment=d[8],isNaN(b.port))b.port=d[5]}else if(b.scheme=d[1]||void 0,b.userinfo=G.indexOf("@")!==-1?d[3]:void 0,b.host=G.indexOf("//")!==-1?d[4]:void 0,b.port=parseInt(d[5],10),b.path=d[6]||"",b.query=G.indexOf("?")!==-1?d[7]:void 0,b.fragment=G.indexOf("#")!==-1?d[8]:void 0,isNaN(b.port))b.port=G.match(/\/\/(?:.|\n)*\:(?:\/|\?|\#|$)/)?d[4]:void 0;if(b.host)b.host=Vq(Nq(b.host,E),E);if(b.scheme===void 0&&b.userinfo===void 0&&b.host===void 0&&b.port===void 0&&!b.path&&b.query===void 0)b.reference="same-document";else if(b.scheme===void 0)b.reference="relative";else if(b.fragment===void 0)b.reference="absolute";else b.reference="uri";if(Z.reference&&Z.reference!=="suffix"&&Z.reference!==b.reference)b.error=b.error||"URI is not a "+Z.reference+" reference.";var x=kq[(Z.scheme||b.scheme||"").toLowerCase()];if(!Z.unicodeSupport&&(!x||!x.unicodeSupport)){if(b.host&&(Z.domainHost||x&&x.domainHost))try{b.host=_q.toASCII(b.host.replace(E.PCT_ENCODED,iq).toLowerCase())}catch(fq){b.error=b.error||"Host's domain name can not be converted to ASCII via punycode: "+fq}x_(b,w)}else x_(b,E);if(x&&x.parse)x.parse(b,Z)}else b.error=b.error||"URI can not be parsed.";return b}function s_(G,Z){var b=Z.iri!==!1?O:w,E=[];if(G.userinfo!==void 0)E.push(G.userinfo),E.push("@");if(G.host!==void 0)E.push(Vq(Nq(String(G.host),b),b).replace(b.IPV6ADDRESS,function(d,x,fq){return"["+x+(fq?"%25"+fq:"")+"]"}));if(typeof G.port==="number"||typeof G.port==="string")E.push(":"),E.push(String(G.port));return E.length?E.join(""):void 0}var R_=/^\.\.?\//,h8=/^\/\.(\/|$)/,J8=/^\/\.\.(\/|$)/,dq=/^\/?(?:.|\n)*?(?=\/|$)/;function __(G){var Z=[];while(G.length)if(G.match(R_))G=G.replace(R_,"");else if(G.match(h8))G=G.replace(h8,"/");else if(G.match(J8))G=G.replace(J8,"/"),Z.pop();else if(G==="."||G==="..")G="";else{var b=G.match(dq);if(b){var E=b[0];G=G.slice(E.length),Z.push(E)}else throw new Error("Unexpected dot segment condition")}return Z.join("")}function tq(G){var Z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},b=Z.iri?O:w,E=[],d=kq[(Z.scheme||G.scheme||"").toLowerCase()];if(d&&d.serialize)d.serialize(G,Z);if(G.host){if(b.IPV6ADDRESS.test(G.host));else if(Z.domainHost||d&&d.domainHost)try{G.host=!Z.iri?_q.toASCII(G.host.replace(b.PCT_ENCODED,iq).toLowerCase()):_q.toUnicode(G.host)}catch(Yq){G.error=G.error||"Host's domain name can not be converted to "+(!Z.iri?"ASCII":"Unicode")+" via punycode: "+Yq}}if(x_(G,b),Z.reference!=="suffix"&&G.scheme)E.push(G.scheme),E.push(":");var x=s_(G,Z);if(x!==void 0){if(Z.reference!=="suffix")E.push("//");if(E.push(x),G.path&&G.path.charAt(0)!=="/")E.push("/")}if(G.path!==void 0){var fq=G.path;if(!Z.absolutePath&&(!d||!d.absolutePath))fq=__(fq);if(x===void 0)fq=fq.replace(/^\/\//,"/%2F");E.push(fq)}if(G.query!==void 0)E.push("?"),E.push(G.query);if(G.fragment!==void 0)E.push("#"),E.push(G.fragment);return E.join("")}function oq(G,Z){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},E=arguments[3],d={};if(!E)G=zq(tq(G,b),b),Z=zq(tq(Z,b),b);if(b=b||{},!b.tolerant&&Z.scheme)d.scheme=Z.scheme,d.userinfo=Z.userinfo,d.host=Z.host,d.port=Z.port,d.path=__(Z.path||""),d.query=Z.query;else{if(Z.userinfo!==void 0||Z.host!==void 0||Z.port!==void 0)d.userinfo=Z.userinfo,d.host=Z.host,d.port=Z.port,d.path=__(Z.path||""),d.query=Z.query;else{if(!Z.path)if(d.path=G.path,Z.query!==void 0)d.query=Z.query;else d.query=G.query;else{if(Z.path.charAt(0)==="/")d.path=__(Z.path);else{if((G.userinfo!==void 0||G.host!==void 0||G.port!==void 0)&&!G.path)d.path="/"+Z.path;else if(!G.path)d.path=Z.path;else d.path=G.path.slice(0,G.path.lastIndexOf("/")+1)+Z.path;d.path=__(d.path)}d.query=Z.query}d.userinfo=G.userinfo,d.host=G.host,d.port=G.port}d.scheme=G.scheme}return d.fragment=Z.fragment,d}function G_(G,Z,b){var E=j({scheme:"null"},b);return tq(oq(zq(G,E),zq(Z,E),E,!0),E)}function Uq(G,Z){if(typeof G==="string")G=tq(zq(G,Z),Z);else if(K(G)==="object")G=zq(tq(G,Z),Z);return G}function n6(G,Z,b){if(typeof G==="string")G=tq(zq(G,b),b);else if(K(G)==="object")G=tq(G,b);if(typeof Z==="string")Z=tq(zq(Z,b),b);else if(K(Z)==="object")Z=tq(Z,b);return G===Z}function RK(G,Z){return G&&G.toString().replace(!Z||!Z.iri?w.ESCAPE:O.ESCAPE,gq)}function Y_(G,Z){return G&&G.toString().replace(!Z||!Z.iri?w.PCT_ENCODED:O.PCT_ENCODED,iq)}var Nf={scheme:"http",domainHost:!0,parse:function G(Z,b){if(!Z.host)Z.error=Z.error||"HTTP URIs must have a host.";return Z},serialize:function G(Z,b){var E=String(Z.scheme).toLowerCase()==="https";if(Z.port===(E?443:80)||Z.port==="")Z.port=void 0;if(!Z.path)Z.path="/";return Z}},o4={scheme:"https",domainHost:Nf.domainHost,parse:Nf.parse,serialize:Nf.serialize};function c4(G){return typeof G.secure==="boolean"?G.secure:String(G.scheme).toLowerCase()==="wss"}var Cf={scheme:"ws",domainHost:!0,parse:function G(Z,b){var E=Z;return E.secure=c4(E),E.resourceName=(E.path||"/")+(E.query?"?"+E.query:""),E.path=void 0,E.query=void 0,E},serialize:function G(Z,b){if(Z.port===(c4(Z)?443:80)||Z.port==="")Z.port=void 0;if(typeof Z.secure==="boolean")Z.scheme=Z.secure?"wss":"ws",Z.secure=void 0;if(Z.resourceName){var E=Z.resourceName.split("?"),d=T(E,2),x=d[0],fq=d[1];Z.path=x&&x!=="/"?x:void 0,Z.query=fq,Z.resourceName=void 0}return Z.fragment=void 0,Z}},L4={scheme:"wss",domainHost:Cf.domainHost,parse:Cf.parse,serialize:Cf.serialize},mO={},rO=!0,t4="[A-Za-z0-9\\-\\.\\_\\~"+(rO?"\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF":"")+"]",m_="[0-9A-Fa-f]",bO=f(f("%[EFef]"+m_+"%"+m_+m_+"%"+m_+m_)+"|"+f("%[89A-Fa-f]"+m_+"%"+m_+m_)+"|"+f("%"+m_+m_)),VO="[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]",MO="[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]",SO=q(MO,"[\\\"\\\\]"),NO="[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]",CO=new RegExp(t4,"g"),I8=new RegExp(bO,"g"),pO=new RegExp(q("[^]",VO,"[\\.]","[\\\"]",SO),"g"),e4=new RegExp(q("[^]",t4,NO),"g"),lO=e4;function EK(G){var Z=iq(G);return!Z.match(CO)?G:Z}var x4={scheme:"mailto",parse:function G(Z,b){var E=Z,d=E.to=E.path?E.path.split(","):[];if(E.path=void 0,E.query){var x=!1,fq={},Yq=E.query.split("&");for(var Wq=0,Cq=Yq.length;Wq<Cq;++Wq){var wq=Yq[Wq].split("=");switch(wq[0]){case"to":var mq=wq[1].split(",");for(var pq=0,uq=mq.length;pq<uq;++pq)d.push(mq[pq]);break;case"subject":E.subject=Y_(wq[1],b);break;case"body":E.body=Y_(wq[1],b);break;default:x=!0,fq[Y_(wq[0],b)]=Y_(wq[1],b);break}}if(x)E.headers=fq}E.query=void 0;for(var Tq=0,rq=d.length;Tq<rq;++Tq){var hq=d[Tq].split("@");if(hq[0]=Y_(hq[0]),!b.unicodeSupport)try{hq[1]=_q.toASCII(Y_(hq[1],b).toLowerCase())}catch(k8){E.error=E.error||"Email address's domain name can not be converted to ASCII via punycode: "+k8}else hq[1]=Y_(hq[1],b).toLowerCase();d[Tq]=hq.join("@")}return E},serialize:function G(Z,b){var E=Z,d=P(Z.to);if(d){for(var x=0,fq=d.length;x<fq;++x){var Yq=String(d[x]),Wq=Yq.lastIndexOf("@"),Cq=Yq.slice(0,Wq).replace(I8,EK).replace(I8,$).replace(pO,gq),wq=Yq.slice(Wq+1);try{wq=!b.iri?_q.toASCII(Y_(wq,b).toLowerCase()):_q.toUnicode(wq)}catch(Tq){E.error=E.error||"Email address's domain name can not be converted to "+(!b.iri?"ASCII":"Unicode")+" via punycode: "+Tq}d[x]=Cq+"@"+wq}E.path=d.join(",")}var mq=Z.headers=Z.headers||{};if(Z.subject)mq.subject=Z.subject;if(Z.body)mq.body=Z.body;var pq=[];for(var uq in mq)if(mq[uq]!==mO[uq])pq.push(uq.replace(I8,EK).replace(I8,$).replace(e4,gq)+"="+mq[uq].replace(I8,EK).replace(I8,$).replace(lO,gq));if(pq.length)E.query=pq.join("&");return E}},nO=/^([^\:]+)\:(.*)/,s4={scheme:"urn",parse:function G(Z,b){var E=Z.path&&Z.path.match(nO),d=Z;if(E){var x=b.scheme||d.scheme||"urn",fq=E[1].toLowerCase(),Yq=E[2],Wq=x+":"+(b.nid||fq),Cq=kq[Wq];if(d.nid=fq,d.nss=Yq,d.path=void 0,Cq)d=Cq.parse(d,b)}else d.error=d.error||"URN can not be parsed.";return d},serialize:function G(Z,b){var E=b.scheme||Z.scheme||"urn",d=Z.nid,x=E+":"+(b.nid||d),fq=kq[x];if(fq)Z=fq.serialize(Z,b);var Yq=Z,Wq=Z.nss;return Yq.path=(d||b.nid)+":"+Wq,Yq}},RO=/^[0-9A-Fa-f]{8}(?:\-[0-9A-Fa-f]{4}){3}\-[0-9A-Fa-f]{12}$/,B4={scheme:"urn:uuid",parse:function G(Z,b){var E=Z;if(E.uuid=E.nss,E.nss=void 0,!b.tolerant&&(!E.uuid||!E.uuid.match(RO)))E.error=E.error||"UUID is not valid.";return E},serialize:function G(Z,b){var E=Z;return E.nss=(Z.uuid||"").toLowerCase(),E}};kq[Nf.scheme]=Nf,kq[o4.scheme]=o4,kq[Cf.scheme]=Cf,kq[L4.scheme]=L4,kq[x4.scheme]=x4,kq[s4.scheme]=s4,kq[B4.scheme]=B4,_.SCHEMES=kq,_.pctEncChar=gq,_.pctDecChars=iq,_.parse=zq,_.removeDotSegments=__,_.serialize=tq,_.resolveComponents=oq,_.resolve=G_,_.normalize=Uq,_.equal=n6,_.escapeComponent=RK,_.unescapeComponent=Y_,Object.defineProperty(_,"__esModule",{value:!0})})});var K$=p((gC,R7)=>{R7.exports=function _(q,f){if(q===f)return!0;if(q&&f&&typeof q=="object"&&typeof f=="object"){if(q.constructor!==f.constructor)return!1;var K,$,P;if(Array.isArray(q)){if(K=q.length,K!=f.length)return!1;for($=K;$--!==0;)if(!_(q[$],f[$]))return!1;return!0}if(q.constructor===RegExp)return q.source===f.source&&q.flags===f.flags;if(q.valueOf!==Object.prototype.valueOf)return q.valueOf()===f.valueOf();if(q.toString!==Object.prototype.toString)return q.toString()===f.toString();if(P=Object.keys(q),K=P.length,K!==Object.keys(f).length)return!1;for($=K;$--!==0;)if(!Object.prototype.hasOwnProperty.call(f,P[$]))return!1;for($=K;$--!==0;){var j=P[$];if(!_(q[j],f[j]))return!1}return!0}return q!==q&&f!==f}});var g7=p((dC,E7)=>{E7.exports=function _(q){var f=0,K=q.length,$=0,P;while($<K)if(f++,P=q.charCodeAt($++),P>=55296&&P<=56319&&$<K){if(P=q.charCodeAt($),(P&64512)==56320)$++}return f}});var b8=p((aC,I7)=>{I7.exports={copy:tT,checkDataType:fP,checkDataTypes:eT,coerceToTypes:xT,toHash:KP,getProperty:PP,escapeQuotes:jP,equal:K$(),ucs2length:g7(),varOccurences:UT,varReplace:FT,schemaHasRules:QT,schemaHasRulesExcept:qz,schemaUnknownRules:_z,toQuotedString:$P,getPathExpr:fz,getPath:$z,getData:jz,unescapeFragment:vz,unescapeJsonPointer:wP,escapeFragment:wz,escapeJsonPointer:vP};function tT(_,q){q=q||{};for(var f in _)q[f]=_[f];return q}function fP(_,q,f,K){var $=K?" !== ":" === ",P=K?" || ":" && ",j=K?"!":"",v=K?"":"!";switch(_){case"null":return q+$+"null";case"array":return j+"Array.isArray("+q+")";case"object":return"("+j+q+P+"typeof "+q+$+'"object"'+P+v+"Array.isArray("+q+"))";case"integer":return"(typeof "+q+$+'"number"'+P+v+"("+q+" % 1)"+P+q+$+q+(f?P+j+"isFinite("+q+")":"")+")";case"number":return"(typeof "+q+$+'"'+_+'"'+(f?P+j+"isFinite("+q+")":"")+")";default:return"typeof "+q+$+'"'+_+'"'}}function eT(_,q,f){switch(_.length){case 1:return fP(_[0],q,f,!0);default:var K="",$=KP(_);if($.array&&$.object)K=$.null?"(":"(!"+q+" || ",K+="typeof "+q+' !== "object")',delete $.null,delete $.array,delete $.object;if($.number)delete $.integer;for(var P in $)K+=(K?" && ":"")+fP(P,q,f,!0);return K}}var d7=KP(["string","number","integer","boolean","null"]);function xT(_,q){if(Array.isArray(q)){var f=[];for(var K=0;K<q.length;K++){var $=q[K];if(d7[$])f[f.length]=$;else if(_==="array"&&$==="array")f[f.length]=$}if(f.length)return f}else if(d7[q])return[q];else if(_==="array"&&q==="array")return["array"]}function KP(_){var q={};for(var f=0;f<_.length;f++)q[_[f]]=!0;return q}var sT=/^[a-z$_][a-z$_0-9]*$/i,BT=/'|\\/g;function PP(_){return typeof _=="number"?"["+_+"]":sT.test(_)?"."+_:"['"+jP(_)+"']"}function jP(_){return _.replace(BT,"\\$&").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\f/g,"\\f").replace(/\t/g,"\\t")}function UT(_,q){q+="[^0-9]";var f=_.match(new RegExp(q,"g"));return f?f.length:0}function FT(_,q,f){return q+="([^0-9])",f=f.replace(/\$/g,"$$$$"),_.replace(new RegExp(q,"g"),f+"$1")}function QT(_,q){if(typeof _=="boolean")return!_;for(var f in _)if(q[f])return!0}function qz(_,q,f){if(typeof _=="boolean")return!_&&f!="not";for(var K in _)if(K!=f&&q[K])return!0}function _z(_,q){if(typeof _=="boolean")return;for(var f in _)if(!q[f])return f}function $P(_){return"'"+jP(_)+"'"}function fz(_,q,f,K){var $=f?"'/' + "+q+(K?"":".replace(/~/g, '~0').replace(/\\//g, '~1')"):K?"'[' + "+q+" + ']'":"'[\\'' + "+q+" + '\\']'";return a7(_,$)}function $z(_,q,f){var K=f?$P("/"+vP(q)):$P(PP(q));return a7(_,K)}var Kz=/^\/(?:[^~]|~0|~1)*$/,Pz=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function jz(_,q,f){var K,$,P,j;if(_==="")return"rootData";if(_[0]=="/"){if(!Kz.test(_))throw new Error("Invalid JSON-pointer: "+_);$=_,P="rootData"}else{if(j=_.match(Pz),!j)throw new Error("Invalid JSON-pointer: "+_);if(K=+j[1],$=j[2],$=="#"){if(K>=q)throw new Error("Cannot access property/index "+K+" levels up, current level is "+q);return f[q-K]}if(K>q)throw new Error("Cannot access data "+K+" levels up, current level is "+q);if(P="data"+(q-K||""),!$)return P}var v=P,w=$.split("/");for(var O=0;O<w.length;O++){var T=w[O];if(T)P+=PP(wP(T)),v+=" && "+P}return v}function a7(_,q){if(_=='""')return q;return(_+" + "+q).replace(/([^\\])' \+ '/g,"$1")}function vz(_){return wP(decodeURIComponent(_))}function wz(_){return encodeURIComponent(vP(_))}function vP(_){return _.replace(/~/g,"~0").replace(/\//g,"~1")}function wP(_){return _.replace(/~1/g,"/").replace(/~0/g,"~")}});var OP=p((IC,D7)=>{var Oz=b8();D7.exports=Yz;function Yz(_){Oz.copy(_,this)}});var i7=p((DC,y7)=>{var _8=y7.exports=function(_,q,f){if(typeof q=="function")f=q,q={};f=q.cb||f;var K=typeof f=="function"?f:f.pre||function(){},$=f.post||function(){};P$(q,K,$,_,"",_)};_8.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0};_8.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};_8.propsKeywords={definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};_8.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function P$(_,q,f,K,$,P,j,v,w,O){if(K&&typeof K=="object"&&!Array.isArray(K)){q(K,$,P,j,v,w,O);for(var T in K){var Y=K[T];if(Array.isArray(Y)){if(T in _8.arrayKeywords)for(var z=0;z<Y.length;z++)P$(_,q,f,Y[z],$+"/"+T+"/"+z,P,$,T,K,z)}else if(T in _8.propsKeywords){if(Y&&typeof Y=="object")for(var H in Y)P$(_,q,f,Y[H],$+"/"+T+"/"+Tz(H),P,$,T,K,H)}else if(T in _8.keywords||_.allKeys&&!(T in _8.skipKeywords))P$(_,q,f,Y,$+"/"+T,P,$,T,K)}f(K,$,P,j,v,w,O)}}function Tz(_){return _.replace(/~/g,"~0").replace(/\//g,"~1")}});var T$=p((yC,t7)=>{var xf=n7(),o7=K$(),O$=b8(),j$=OP(),zz=i7();t7.exports=$8;$8.normalizeId=f8;$8.fullPath=v$;$8.url=w$;$8.ids=kz;$8.inlineRef=YP;$8.schema=Y$;function $8(_,q,f){var K=this._refs[f];if(typeof K=="string")if(this._refs[K])K=this._refs[K];else return $8.call(this,_,q,K);if(K=K||this._schemas[f],K instanceof j$)return YP(K.schema,this._opts.inlineRefs)?K.schema:K.validate||this._compile(K);var $=Y$.call(this,q,f),P,j,v;if($)P=$.schema,q=$.root,v=$.baseId;if(P instanceof j$)j=P.validate||_.call(this,P.schema,q,void 0,v);else if(P!==void 0)j=YP(P,this._opts.inlineRefs)?P:_.call(this,P,q,void 0,v);return j}function Y$(_,q){var f=xf.parse(q),K=L7(f),$=v$(this._getId(_.schema));if(Object.keys(_.schema).length===0||K!==$){var P=f8(K),j=this._refs[P];if(typeof j=="string")return Wz.call(this,_,j,f);else if(j instanceof j$){if(!j.validate)this._compile(j);_=j}else if(j=this._schemas[P],j instanceof j$){if(!j.validate)this._compile(j);if(P==f8(q))return{schema:j,root:_,baseId:$};_=j}else return;if(!_.schema)return;$=v$(this._getId(_.schema))}return c7.call(this,f,$,_.schema,_)}function Wz(_,q,f){var K=Y$.call(this,_,q);if(K){var{schema:$,baseId:P}=K;_=K.root;var j=this._getId($);if(j)P=w$(P,j);return c7.call(this,f,P,$,_)}}var Hz=O$.toHash(["properties","patternProperties","enum","dependencies","definitions"]);function c7(_,q,f,K){if(_.fragment=_.fragment||"",_.fragment.slice(0,1)!="/")return;var $=_.fragment.split("/");for(var P=1;P<$.length;P++){var j=$[P];if(j){if(j=O$.unescapeFragment(j),f=f[j],f===void 0)break;var v;if(!Hz[j]){if(v=this._getId(f),v)q=w$(q,v);if(f.$ref){var w=w$(q,f.$ref),O=Y$.call(this,K,w);if(O)f=O.schema,K=O.root,q=O.baseId}}}}if(f!==void 0&&f!==K.schema)return{schema:f,root:K,baseId:q}}var hz=O$.toHash(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum"]);function YP(_,q){if(q===!1)return!1;if(q===void 0||q===!0)return TP(_);else if(q)return zP(_)<=q}function TP(_){var q;if(Array.isArray(_)){for(var f=0;f<_.length;f++)if(q=_[f],typeof q=="object"&&!TP(q))return!1}else for(var K in _){if(K=="$ref")return!1;if(q=_[K],typeof q=="object"&&!TP(q))return!1}return!0}function zP(_){var q=0,f;if(Array.isArray(_))for(var K=0;K<_.length;K++){if(f=_[K],typeof f=="object")q+=zP(f);if(q==1/0)return 1/0}else for(var $ in _){if($=="$ref")return 1/0;if(hz[$])q++;else{if(f=_[$],typeof f=="object")q+=zP(f)+1;if(q==1/0)return 1/0}}return q}function v$(_,q){if(q!==!1)_=f8(_);var f=xf.parse(_);return L7(f)}function L7(_){return xf.serialize(_).split("#")[0]+"#"}var Jz=/#\/?$/;function f8(_){return _?_.replace(Jz,""):""}function w$(_,q){return q=f8(q),xf.resolve(_,q)}function kz(_){var q=f8(this._getId(_)),f={"":q},K={"":v$(q,!1)},$={},P=this;return zz(_,{allKeys:!0},function(j,v,w,O,T,Y,z){if(v==="")return;var H=P._getId(j),h=f[O],J=K[O]+"/"+T;if(z!==void 0)J+="/"+(typeof z=="number"?z:O$.escapeFragment(z));if(typeof H=="string"){H=h=f8(h?xf.resolve(h,H):H);var k=P._refs[H];if(typeof k=="string")k=P._refs[k];if(k&&k.schema){if(!o7(j,k.schema))throw new Error('id "'+H+'" resolves to more than one schema')}else if(H!=f8(J))if(H[0]=="#"){if($[H]&&!o7(j,$[H]))throw new Error('id "'+H+'" resolves to more than one schema');$[H]=j}else P._refs[H]=J}f[v]=h,K[v]=J}),$}});var z$=p((iC,x7)=>{var WP=T$();x7.exports={Validation:e7(Zz),MissingRef:e7(HP)};function Zz(_){this.message="validation failed",this.errors=_,this.ajv=this.validation=!0}HP.message=function(_,q){return"can't resolve reference "+q+" from id "+_};function HP(_,q,f){this.message=f||HP.message(_,q),this.missingRef=WP.url(_,q),this.missingSchema=WP.normalizeId(WP.fullPath(this.missingRef))}function e7(_){return _.prototype=Object.create(Error.prototype),_.prototype.constructor=_,_}});var hP=p((oC,s7)=>{s7.exports=function(_,q){if(!q)q={};if(typeof q==="function")q={cmp:q};var f=typeof q.cycles==="boolean"?q.cycles:!1,K=q.cmp&&function(P){return function(j){return function(v,w){var O={key:v,value:j[v]},T={key:w,value:j[w]};return P(O,T)}}}(q.cmp),$=[];return function P(j){if(j&&j.toJSON&&typeof j.toJSON==="function")j=j.toJSON();if(j===void 0)return;if(typeof j=="number")return isFinite(j)?""+j:"null";if(typeof j!=="object")return JSON.stringify(j);var v,w;if(Array.isArray(j)){w="[";for(v=0;v<j.length;v++){if(v)w+=",";w+=P(j[v])||"null"}return w+"]"}if(j===null)return"null";if($.indexOf(j)!==-1){if(f)return JSON.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}var O=$.push(j)-1,T=Object.keys(j).sort(K&&K(j));w="";for(v=0;v<T.length;v++){var Y=T[v],z=P(j[Y]);if(!z)continue;if(w)w+=",";w+=JSON.stringify(Y)+":"+z}return $.splice(O,1),"{"+w+"}"}(_)}});var JP=p((cC,B7)=>{B7.exports=function _(q,f,K){var $="",P=q.schema.$async===!0,j=q.util.schemaHasRulesExcept(q.schema,q.RULES.all,"$ref"),v=q.self._getId(q.schema);if(q.opts.strictKeywords){var w=q.util.schemaUnknownRules(q.schema,q.RULES.keywords);if(w){var O="unknown keyword: "+w;if(q.opts.strictKeywords==="log")q.logger.warn(O);else throw new Error(O)}}if(q.isTop){if($+=" var validate = ",P)q.async=!0,$+="async ";if($+="function(data, dataPath, parentData, parentDataProperty, rootData) { 'use strict'; ",v&&(q.opts.sourceCode||q.opts.processCode))$+=" "+("/*# sourceURL="+v+" */")+" "}if(typeof q.schema=="boolean"||!(j||q.schema.$ref)){var f="false schema",T=q.level,Y=q.dataLevel,z=q.schema[f],H=q.schemaPath+q.util.getProperty(f),h=q.errSchemaPath+"/"+f,R=!q.opts.allErrors,M,J="data"+(Y||""),n="valid"+T;if(q.schema===!1){if(q.isTop)R=!0;else $+=" var "+n+" = false; ";var k=k||[];if(k.push($),$="",q.createErrors!==!1){if($+=" { keyword: '"+(M||"false schema")+"' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(h)+" , params: {} ",q.opts.messages!==!1)$+=" , message: 'boolean schema is false' ";if(q.opts.verbose)$+=" , schema: false , parentSchema: validate.schema"+q.schemaPath+" , data: "+J+" ";$+=" } "}else $+=" {} ";var X=$;if($=k.pop(),!q.compositeRule&&R)if(q.async)$+=" throw new ValidationError(["+X+"]); ";else $+=" validate.errors = ["+X+"]; return false; ";else $+=" var err = "+X+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}else if(q.isTop)if(P)$+=" return data; ";else $+=" validate.errors = null; return true; ";else $+=" var "+n+" = true; ";if(q.isTop)$+=" }; return validate; ";return $}if(q.isTop){var l=q.isTop,T=q.level=0,Y=q.dataLevel=0,J="data";if(q.rootId=q.resolve.fullPath(q.self._getId(q.root.schema)),q.baseId=q.baseId||q.rootId,delete q.isTop,q.dataPathArr=[""],q.schema.default!==void 0&&q.opts.useDefaults&&q.opts.strictDefaults){var N="default is ignored in the schema root";if(q.opts.strictDefaults==="log")q.logger.warn(N);else throw new Error(N)}$+=" var vErrors = null; ",$+=" var errors = 0; ",$+=" if (rootData === undefined) rootData = data; "}else{var{level:T,dataLevel:Y}=q,J="data"+(Y||"");if(v)q.baseId=q.resolve.url(q.baseId,v);if(P&&!q.async)throw new Error("async schema in sync schema");$+=" var errs_"+T+" = errors;"}var n="valid"+T,R=!q.opts.allErrors,g="",V="",M,C=q.schema.type,a=Array.isArray(C);if(C&&q.opts.nullable&&q.schema.nullable===!0){if(a){if(C.indexOf("null")==-1)C=C.concat("null")}else if(C!="null")C=[C,"null"],a=!0}if(a&&C.length==1)C=C[0],a=!1;if(q.schema.$ref&&j){if(q.opts.extendRefs=="fail")throw new Error('$ref: validation keywords used in schema at path "'+q.errSchemaPath+'" (see option extendRefs)');else if(q.opts.extendRefs!==!0)j=!1,q.logger.warn('$ref: keywords ignored in schema at path "'+q.errSchemaPath+'"')}if(q.schema.$comment&&q.opts.$comment)$+=" "+q.RULES.all.$comment.code(q,"$comment");if(C){if(q.opts.coerceTypes)var r=q.util.coerceToTypes(q.opts.coerceTypes,C);var A=q.RULES.types[C];if(r||a||A===!0||A&&!dq(A)){var H=q.schemaPath+".type",h=q.errSchemaPath+"/type",H=q.schemaPath+".type",h=q.errSchemaPath+"/type",u=a?"checkDataTypes":"checkDataType";if($+=" if ("+q.util[u](C,J,q.opts.strictNumbers,!0)+") { ",r){var m="dataType"+T,S="coerced"+T;if($+=" var "+m+" = typeof "+J+"; var "+S+" = undefined; ",q.opts.coerceTypes=="array")$+=" if ("+m+" == 'object' && Array.isArray("+J+") && "+J+".length == 1) { "+J+" = "+J+"[0]; "+m+" = typeof "+J+"; if ("+q.util.checkDataType(q.schema.type,J,q.opts.strictNumbers)+") "+S+" = "+J+"; } ";$+=" if ("+S+" !== undefined) ; ";var I=r;if(I){var D,c=-1,e=I.length-1;while(c<e)if(D=I[c+=1],D=="string")$+=" else if ("+m+" == 'number' || "+m+" == 'boolean') "+S+" = '' + "+J+"; else if ("+J+" === null) "+S+" = ''; ";else if(D=="number"||D=="integer"){if($+=" else if ("+m+" == 'boolean' || "+J+" === null || ("+m+" == 'string' && "+J+" && "+J+" == +"+J+" ",D=="integer")$+=" && !("+J+" % 1)";$+=")) "+S+" = +"+J+"; "}else if(D=="boolean")$+=" else if ("+J+" === 'false' || "+J+" === 0 || "+J+" === null) "+S+" = false; else if ("+J+" === 'true' || "+J+" === 1) "+S+" = true; ";else if(D=="null")$+=" else if ("+J+" === '' || "+J+" === 0 || "+J+" === false) "+S+" = null; ";else if(q.opts.coerceTypes=="array"&&D=="array")$+=" else if ("+m+" == 'string' || "+m+" == 'number' || "+m+" == 'boolean' || "+J+" == null) "+S+" = ["+J+"]; "}$+=" else { ";var k=k||[];if(k.push($),$="",q.createErrors!==!1){if($+=" { keyword: '"+(M||"type")+"' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(h)+" , params: { type: '",a)$+=""+C.join(",");else $+=""+C;if($+="' } ",q.opts.messages!==!1){if($+=" , message: 'should be ",a)$+=""+C.join(",");else $+=""+C;$+="' "}if(q.opts.verbose)$+=" , schema: validate.schema"+H+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+J+" ";$+=" } "}else $+=" {} ";var X=$;if($=k.pop(),!q.compositeRule&&R)if(q.async)$+=" throw new ValidationError(["+X+"]); ";else $+=" validate.errors = ["+X+"]; return false; ";else $+=" var err = "+X+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";$+=" } if ("+S+" !== undefined) { ";var L=Y?"data"+(Y-1||""):"parentData",Q=Y?q.dataPathArr[Y]:"parentDataProperty";if($+=" "+J+" = "+S+"; ",!Y)$+="if ("+L+" !== undefined)";$+=" "+L+"["+Q+"] = "+S+"; } "}else{var k=k||[];if(k.push($),$="",q.createErrors!==!1){if($+=" { keyword: '"+(M||"type")+"' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(h)+" , params: { type: '",a)$+=""+C.join(",");else $+=""+C;if($+="' } ",q.opts.messages!==!1){if($+=" , message: 'should be ",a)$+=""+C.join(",");else $+=""+C;$+="' "}if(q.opts.verbose)$+=" , schema: validate.schema"+H+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+J+" ";$+=" } "}else $+=" {} ";var X=$;if($=k.pop(),!q.compositeRule&&R)if(q.async)$+=" throw new ValidationError(["+X+"]); ";else $+=" validate.errors = ["+X+"]; return false; ";else $+=" var err = "+X+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}$+=" } "}}if(q.schema.$ref&&!j){if($+=" "+q.RULES.all.$ref.code(q,"$ref")+" ",R){if($+=" } if (errors === ",l)$+="0";else $+="errs_"+T;$+=") { ",V+="}"}}else{var Hq=q.RULES;if(Hq){var A,Pq=-1,_q=Hq.length-1;while(Pq<_q)if(A=Hq[Pq+=1],dq(A)){if(A.type)$+=" if ("+q.util.checkDataType(A.type,J,q.opts.strictNumbers)+") { ";if(q.opts.useDefaults){if(A.type=="object"&&q.schema.properties){var z=q.schema.properties,kq=Object.keys(z),gq=kq;if(gq){var iq,x_=-1,n_=gq.length-1;while(x_<n_){iq=gq[x_+=1];var Nq=z[iq];if(Nq.default!==void 0){var Vq=J+q.util.getProperty(iq);if(q.compositeRule){if(q.opts.strictDefaults){var N="default is ignored for: "+Vq;if(q.opts.strictDefaults==="log")q.logger.warn(N);else throw new Error(N)}}else{if($+=" if ("+Vq+" === undefined ",q.opts.useDefaults=="empty")$+=" || "+Vq+" === null || "+Vq+" === '' ";if($+=" ) "+Vq+" = ",q.opts.useDefaults=="shared")$+=" "+q.useDefault(Nq.default)+" ";else $+=" "+JSON.stringify(Nq.default)+" ";$+="; "}}}}}else if(A.type=="array"&&Array.isArray(q.schema.items)){var H8=q.schema.items;if(H8){var Nq,c=-1,Dq=H8.length-1;while(c<Dq)if(Nq=H8[c+=1],Nq.default!==void 0){var Vq=J+"["+c+"]";if(q.compositeRule){if(q.opts.strictDefaults){var N="default is ignored for: "+Vq;if(q.opts.strictDefaults==="log")q.logger.warn(N);else throw new Error(N)}}else{if($+=" if ("+Vq+" === undefined ",q.opts.useDefaults=="empty")$+=" || "+Vq+" === null || "+Vq+" === '' ";if($+=" ) "+Vq+" = ",q.opts.useDefaults=="shared")$+=" "+q.useDefault(Nq.default)+" ";else $+=" "+JSON.stringify(Nq.default)+" ";$+="; "}}}}}var zq=A.rules;if(zq){var s_,R_=-1,h8=zq.length-1;while(R_<h8)if(s_=zq[R_+=1],__(s_)){var J8=s_.code(q,s_.keyword,A.type);if(J8){if($+=" "+J8+" ",R)g+="}"}}}if(R)$+=" "+g+" ",g="";if(A.type){if($+=" } ",C&&C===A.type&&!r){$+=" else { ";var H=q.schemaPath+".type",h=q.errSchemaPath+"/type",k=k||[];if(k.push($),$="",q.createErrors!==!1){if($+=" { keyword: '"+(M||"type")+"' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(h)+" , params: { type: '",a)$+=""+C.join(",");else $+=""+C;if($+="' } ",q.opts.messages!==!1){if($+=" , message: 'should be ",a)$+=""+C.join(",");else $+=""+C;$+="' "}if(q.opts.verbose)$+=" , schema: validate.schema"+H+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+J+" ";$+=" } "}else $+=" {} ";var X=$;if($=k.pop(),!q.compositeRule&&R)if(q.async)$+=" throw new ValidationError(["+X+"]); ";else $+=" validate.errors = ["+X+"]; return false; ";else $+=" var err = "+X+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";$+=" } "}}if(R){if($+=" if (errors === ",l)$+="0";else $+="errs_"+T;$+=") { ",V+="}"}}}}if(R)$+=" "+V+" ";if(l){if(P)$+=" if (errors === 0) return data; ",$+=" else throw new ValidationError(vErrors); ";else $+=" validate.errors = vErrors; ",$+=" return errors === 0; ";$+=" }; return validate;"}else $+=" var "+n+" = errors === errs_"+T+";";function dq(oq){var G_=oq.rules;for(var Uq=0;Uq<G_.length;Uq++)if(__(G_[Uq]))return!0}function __(oq){return q.schema[oq.keyword]!==void 0||oq.implements&&tq(oq)}function tq(oq){var G_=oq.implements;for(var Uq=0;Uq<G_.length;Uq++)if(q.schema[G_[Uq]]!==void 0)return!0}return $}});var _j=p((LC,qj)=>{var W$=T$(),h$=b8(),F7=z$(),Xz=hP(),U7=JP(),Az=h$.ucs2length,uz=K$(),Gz=F7.Validation;qj.exports=kP;function kP(_,q,f,K){var $=this,P=this._opts,j=[void 0],v={},w=[],O={},T=[],Y={},z=[];q=q||{schema:_,refVal:j,refs:v};var H=mz.call(this,_,q,K),h=this._compilations[H.index];if(H.compiling)return h.callValidate=N;var J=this._formats,k=this.RULES;try{var X=n(_,q,f,K);h.validate=X;var l=h.callValidate;if(l){if(l.schema=X.schema,l.errors=null,l.refs=X.refs,l.refVal=X.refVal,l.root=X.root,l.$async=X.$async,P.sourceCode)l.source=X.source}return X}finally{rz.call(this,_,q,K)}function N(){var u=h.validate,m=u.apply(this,arguments);return N.errors=u.errors,m}function n(u,m,S,I){var D=!m||m&&m.schema==u;if(m.schema!=q.schema)return kP.call($,u,m,S,I);var c=u.$async===!0,e=U7({isTop:!0,schema:u,isRoot:D,baseId:I,root:m,schemaPath:"",errSchemaPath:"#",errorPath:'""',MissingRefError:F7.MissingRef,RULES:k,validate:U7,util:h$,resolve:W$,resolveRef:R,usePattern:a,useDefault:r,useCustomRule:A,opts:P,formats:J,logger:$.logger,self:$});if(e=H$(j,Mz)+H$(w,bz)+H$(T,Vz)+H$(z,Sz)+e,P.processCode)e=P.processCode(e,u);var L;try{var Q=new Function("self","RULES","formats","root","refVal","defaults","customRules","equal","ucs2length","ValidationError",e);L=Q($,k,J,q,j,T,z,uz,Az,Gz),j[0]=L}catch(Hq){throw $.logger.error("Error compiling schema, function code:",e),Hq}if(L.schema=u,L.errors=null,L.refs=v,L.refVal=j,L.root=D?L:m,c)L.$async=!0;if(P.sourceCode===!0)L.source={code:e,patterns:w,defaults:T};return L}function R(u,m,S){m=W$.url(u,m);var I=v[m],D,c;if(I!==void 0)return D=j[I],c="refVal["+I+"]",C(D,c);if(!S&&q.refs){var e=q.refs[m];if(e!==void 0)return D=q.refVal[e],c=g(m,D),C(D,c)}c=g(m);var L=W$.call($,n,q,m);if(L===void 0){var Q=f&&f[m];if(Q)L=W$.inlineRef(Q,P.inlineRefs)?Q:kP.call($,Q,q,f,u)}if(L===void 0)V(m);else return M(m,L),C(L,c)}function g(u,m){var S=j.length;return j[S]=m,v[u]=S,"refVal"+S}function V(u){delete v[u]}function M(u,m){var S=v[u];j[S]=m}function C(u,m){return typeof u=="object"||typeof u=="boolean"?{code:m,schema:u,inline:!0}:{code:m,$async:u&&!!u.$async}}function a(u){var m=O[u];if(m===void 0)m=O[u]=w.length,w[m]=u;return"pattern"+m}function r(u){switch(typeof u){case"boolean":case"number":return""+u;case"string":return h$.toQuotedString(u);case"object":if(u===null)return"null";var m=Xz(u),S=Y[m];if(S===void 0)S=Y[m]=T.length,T[S]=u;return"default"+S}}function A(u,m,S,I){if($._opts.validateSchema!==!1){var D=u.definition.dependencies;if(D&&!D.every(function(gq){return Object.prototype.hasOwnProperty.call(S,gq)}))throw new Error("parent schema must have all required keywords: "+D.join(","));var c=u.definition.validateSchema;if(c){var e=c(m);if(!e){var L="keyword schema is invalid: "+$.errorsText(c.errors);if($._opts.validateSchema=="log")$.logger.error(L);else throw new Error(L)}}}var Q=u.definition.compile,Hq=u.definition.inline,Pq=u.definition.macro,_q;if(Q)_q=Q.call($,m,S,I);else if(Pq){if(_q=Pq.call($,m,S,I),P.validateSchema!==!1)$.validateSchema(_q,!0)}else if(Hq)_q=Hq.call($,I,u.keyword,m,S);else if(_q=u.definition.validate,!_q)return;if(_q===void 0)throw new Error('custom keyword "'+u.keyword+'"failed to compile');var kq=z.length;return z[kq]=_q,{code:"customRule"+kq,validate:_q}}}function mz(_,q,f){var K=Q7.call(this,_,q,f);if(K>=0)return{index:K,compiling:!0};return K=this._compilations.length,this._compilations[K]={schema:_,root:q,baseId:f},{index:K,compiling:!1}}function rz(_,q,f){var K=Q7.call(this,_,q,f);if(K>=0)this._compilations.splice(K,1)}function Q7(_,q,f){for(var K=0;K<this._compilations.length;K++){var $=this._compilations[K];if($.schema==_&&$.root==q&&$.baseId==f)return K}return-1}function bz(_,q){return"var pattern"+_+" = new RegExp("+h$.toQuotedString(q[_])+");"}function Vz(_){return"var default"+_+" = defaults["+_+"];"}function Mz(_,q){return q[_]===void 0?"":"var refVal"+_+" = refVal["+_+"];"}function Sz(_){return"var customRule"+_+" = customRules["+_+"];"}function H$(_,q){if(!_.length)return"";var f="";for(var K=0;K<_.length;K++)f+=q(K,_);return f}});var $j=p((tC,fj)=>{var J$=fj.exports=function _(){this._cache={}};J$.prototype.put=function _(q,f){this._cache[q]=f};J$.prototype.get=function _(q){return this._cache[q]};J$.prototype.del=function _(q){delete this._cache[q]};J$.prototype.clear=function _(){this._cache={}}});var hj=p((eC,Hj)=>{var Nz=b8(),Cz=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,pz=[0,31,28,31,30,31,30,31,31,30,31,30,31],lz=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d(?::?\d\d)?)?$/i,Kj=/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,nz=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,Rz=/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,Pj=/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,jj=/^(?:(?:http[s\u017F]?|ftp):\/\/)(?:(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+(?::(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?@)?(?:(?!10(?:\.[0-9]{1,3}){3})(?!127(?:\.[0-9]{1,3}){3})(?!169\.254(?:\.[0-9]{1,3}){2})(?!192\.168(?:\.[0-9]{1,3}){2})(?!172\.(?:1[6-9]|2[0-9]|3[01])(?:\.[0-9]{1,3}){2})(?:[1-9][0-9]?|1[0-9][0-9]|2[01][0-9]|22[0-3])(?:\.(?:1?[0-9]{1,2}|2[0-4][0-9]|25[0-5])){2}(?:\.(?:[1-9][0-9]?|1[0-9][0-9]|2[0-4][0-9]|25[0-4]))|(?:(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)(?:\.(?:(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-)*(?:[0-9a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)*(?:\.(?:(?:[a-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]){2,})))(?::[0-9]{2,5})?(?:\/(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?$/i,vj=/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,wj=/^(?:\/(?:[^~/]|~0|~1)*)*$/,Oj=/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,Yj=/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/;Hj.exports=k$;function k$(_){return _=_=="full"?"full":"fast",Nz.copy(k$[_])}k$.fast={date:/^\d\d\d\d-[0-1]\d-[0-3]\d$/,time:/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,"date-time":/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,"uri-template":Pj,url:jj,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i,hostname:Kj,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,regex:Wj,uuid:vj,"json-pointer":wj,"json-pointer-uri-fragment":Oj,"relative-json-pointer":Yj};k$.full={date:Tj,time:zj,"date-time":dz,uri:Iz,"uri-reference":Rz,"uri-template":Pj,url:jj,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:Kj,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,regex:Wj,uuid:vj,"json-pointer":wj,"json-pointer-uri-fragment":Oj,"relative-json-pointer":Yj};function Ez(_){return _%4===0&&(_%100!==0||_%400===0)}function Tj(_){var q=_.match(Cz);if(!q)return!1;var f=+q[1],K=+q[2],$=+q[3];return K>=1&&K<=12&&$>=1&&$<=(K==2&&Ez(f)?29:pz[K])}function zj(_,q){var f=_.match(lz);if(!f)return!1;var K=f[1],$=f[2],P=f[3],j=f[5];return(K<=23&&$<=59&&P<=59||K==23&&$==59&&P==60)&&(!q||j)}var gz=/t|\s/i;function dz(_){var q=_.split(gz);return q.length==2&&Tj(q[0])&&zj(q[1],!0)}var az=/\/|:/;function Iz(_){return az.test(_)&&nz.test(_)}var Dz=/[^\\]\\Z/;function Wj(_){if(Dz.test(_))return!1;try{return new RegExp(_),!0}catch(q){return!1}}});var kj=p((xC,Jj)=>{Jj.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.errSchemaPath+"/"+f,O=!q.opts.allErrors,T="data"+(j||""),Y="valid"+P,z,H;if(v=="#"||v=="#/")if(q.isRoot)z=q.async,H="validate";else z=q.root.schema.$async===!0,H="root.refVal[0]";else{var h=q.resolveRef(q.baseId,v,q.isRoot);if(h===void 0){var J=q.MissingRefError.message(q.baseId,v);if(q.opts.missingRefs=="fail"){q.logger.error(J);var k=k||[];if(k.push($),$="",q.createErrors!==!1){if($+=" { keyword: '$ref' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(w)+" , params: { ref: '"+q.util.escapeQuotes(v)+"' } ",q.opts.messages!==!1)$+=" , message: 'can\\'t resolve reference "+q.util.escapeQuotes(v)+"' ";if(q.opts.verbose)$+=" , schema: "+q.util.toQuotedString(v)+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+T+" ";$+=" } "}else $+=" {} ";var X=$;if($=k.pop(),!q.compositeRule&&O)if(q.async)$+=" throw new ValidationError(["+X+"]); ";else $+=" validate.errors = ["+X+"]; return false; ";else $+=" var err = "+X+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(O)$+=" if (false) { "}else if(q.opts.missingRefs=="ignore"){if(q.logger.warn(J),O)$+=" if (true) { "}else throw new q.MissingRefError(q.baseId,v,J)}else if(h.inline){var l=q.util.copy(q);l.level++;var N="valid"+l.level;l.schema=h.schema,l.schemaPath="",l.errSchemaPath=v;var n=q.validate(l).replace(/validate\.schema/g,h.code);if($+=" "+n+" ",O)$+=" if ("+N+") { "}else z=h.$async===!0||q.async&&h.$async!==!1,H=h.code}if(H){var k=k||[];if(k.push($),$="",q.opts.passContext)$+=" "+H+".call(this, ";else $+=" "+H+"( ";if($+=" "+T+", (dataPath || '')",q.errorPath!='""')$+=" + "+q.errorPath;var R=j?"data"+(j-1||""):"parentData",g=j?q.dataPathArr[j]:"parentDataProperty";$+=" , "+R+" , "+g+", rootData) ";var V=$;if($=k.pop(),z){if(!q.async)throw new Error("async schema referenced by sync schema");if(O)$+=" var "+Y+"; ";if($+=" try { await "+V+"; ",O)$+=" "+Y+" = true; ";if($+=" } catch (e) { if (!(e instanceof ValidationError)) throw e; if (vErrors === null) vErrors = e.errors; else vErrors = vErrors.concat(e.errors); errors = vErrors.length; ",O)$+=" "+Y+" = false; ";if($+=" } ",O)$+=" if ("+Y+") { "}else if($+=" if (!"+V+") { if (vErrors === null) vErrors = "+H+".errors; else vErrors = vErrors.concat("+H+".errors); errors = vErrors.length; } ",O)$+=" else { "}return $}});var Xj=p((sC,Zj)=>{Zj.exports=function _(q,f,K){var $=" ",P=q.schema[f],j=q.schemaPath+q.util.getProperty(f),v=q.errSchemaPath+"/"+f,w=!q.opts.allErrors,O=q.util.copy(q),T="";O.level++;var Y="valid"+O.level,z=O.baseId,H=!0,h=P;if(h){var J,k=-1,X=h.length-1;while(k<X)if(J=h[k+=1],q.opts.strictKeywords?typeof J=="object"&&Object.keys(J).length>0||J===!1:q.util.schemaHasRules(J,q.RULES.all)){if(H=!1,O.schema=J,O.schemaPath=j+"["+k+"]",O.errSchemaPath=v+"/"+k,$+=" "+q.validate(O)+" ",O.baseId=z,w)$+=" if ("+Y+") { ",T+="}"}}if(w)if(H)$+=" if (true) { ";else $+=" "+T.slice(0,-1)+" ";return $}});var uj=p((BC,Aj)=>{Aj.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,Y="data"+(j||""),z="valid"+P,H="errs__"+P,h=q.util.copy(q),J="";h.level++;var k="valid"+h.level,X=v.every(function(M){return q.opts.strictKeywords?typeof M=="object"&&Object.keys(M).length>0||M===!1:q.util.schemaHasRules(M,q.RULES.all)});if(X){var l=h.baseId;$+=" var "+H+" = errors; var "+z+" = false; ";var N=q.compositeRule;q.compositeRule=h.compositeRule=!0;var n=v;if(n){var R,g=-1,V=n.length-1;while(g<V)R=n[g+=1],h.schema=R,h.schemaPath=w+"["+g+"]",h.errSchemaPath=O+"/"+g,$+=" "+q.validate(h)+" ",h.baseId=l,$+=" "+z+" = "+z+" || "+k+"; if (!"+z+") { ",J+="}"}if(q.compositeRule=h.compositeRule=N,$+=" "+J+" if (!"+z+") { var err = ",q.createErrors!==!1){if($+=" { keyword: 'anyOf' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: {} ",q.opts.messages!==!1)$+=" , message: 'should match some schema in anyOf' ";if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";if($+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(vErrors); ";else $+=" validate.errors = vErrors; return false; ";if($+=" } else { errors = "+H+"; if (vErrors !== null) { if ("+H+") vErrors.length = "+H+"; else vErrors = null; } ",q.opts.allErrors)$+=" } "}else if(T)$+=" if (true) { ";return $}});var mj=p((UC,Gj)=>{Gj.exports=function _(q,f,K){var $=" ",P=q.schema[f],j=q.errSchemaPath+"/"+f,v=!q.opts.allErrors,w=q.util.toQuotedString(P);if(q.opts.$comment===!0)$+=" console.log("+w+");";else if(typeof q.opts.$comment=="function")$+=" self._opts.$comment("+w+", "+q.util.toQuotedString(j)+", validate.root.schema);";return $}});var bj=p((FC,rj)=>{rj.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,Y="data"+(j||""),z="valid"+P,H=q.opts.$data&&v&&v.$data,h;if(H)$+=" var schema"+P+" = "+q.util.getData(v.$data,j,q.dataPathArr)+"; ",h="schema"+P;else h=v;if(!H)$+=" var schema"+P+" = validate.schema"+w+";";$+="var "+z+" = equal("+Y+", schema"+P+"); if (!"+z+") { ";var J=J||[];if(J.push($),$="",q.createErrors!==!1){if($+=" { keyword: 'const' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { allowedValue: schema"+P+" } ",q.opts.messages!==!1)$+=" , message: 'should be equal to constant' ";if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";var k=$;if($=J.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+k+"]); ";else $+=" validate.errors = ["+k+"]; return false; ";else $+=" var err = "+k+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if($+=" }",T)$+=" else { ";return $}});var Mj=p((QC,Vj)=>{Vj.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,Y="data"+(j||""),z="valid"+P,H="errs__"+P,h=q.util.copy(q),J="";h.level++;var k="valid"+h.level,X="i"+P,l=h.dataLevel=q.dataLevel+1,N="data"+l,n=q.baseId,R=q.opts.strictKeywords?typeof v=="object"&&Object.keys(v).length>0||v===!1:q.util.schemaHasRules(v,q.RULES.all);if($+="var "+H+" = errors;var "+z+";",R){var g=q.compositeRule;q.compositeRule=h.compositeRule=!0,h.schema=v,h.schemaPath=w,h.errSchemaPath=O,$+=" var "+k+" = false; for (var "+X+" = 0; "+X+" < "+Y+".length; "+X+"++) { ",h.errorPath=q.util.getPathExpr(q.errorPath,X,q.opts.jsonPointers,!0);var V=Y+"["+X+"]";h.dataPathArr[l]=X;var M=q.validate(h);if(h.baseId=n,q.util.varOccurences(M,N)<2)$+=" "+q.util.varReplace(M,N,V)+" ";else $+=" var "+N+" = "+V+"; "+M+" ";$+=" if ("+k+") break; } ",q.compositeRule=h.compositeRule=g,$+=" "+J+" if (!"+k+") {"}else $+=" if ("+Y+".length == 0) {";var C=C||[];if(C.push($),$="",q.createErrors!==!1){if($+=" { keyword: 'contains' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: {} ",q.opts.messages!==!1)$+=" , message: 'should contain a valid item' ";if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";var a=$;if($=C.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+a+"]); ";else $+=" validate.errors = ["+a+"]; return false; ";else $+=" var err = "+a+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if($+=" } else { ",R)$+=" errors = "+H+"; if (vErrors !== null) { if ("+H+") vErrors.length = "+H+"; else vErrors = null; } ";if(q.opts.allErrors)$+=" } ";return $}});var Nj=p((qp,Sj)=>{Sj.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,Y="data"+(j||""),z="errs__"+P,H=q.util.copy(q),h="";H.level++;var J="valid"+H.level,k={},X={},l=q.opts.ownProperties;for(g in v){if(g=="__proto__")continue;var N=v[g],n=Array.isArray(N)?X:k;n[g]=N}$+="var "+z+" = errors;";var R=q.errorPath;$+="var missing"+P+";";for(var g in X)if(n=X[g],n.length){if($+=" if ( "+Y+q.util.getProperty(g)+" !== undefined ",l)$+=" && Object.prototype.hasOwnProperty.call("+Y+", '"+q.util.escapeQuotes(g)+"') ";if(T){$+=" && ( ";var V=n;if(V){var M,C=-1,a=V.length-1;while(C<a){if(M=V[C+=1],C)$+=" || ";var r=q.util.getProperty(M),A=Y+r;if($+=" ( ( "+A+" === undefined ",l)$+=" || ! Object.prototype.hasOwnProperty.call("+Y+", '"+q.util.escapeQuotes(M)+"') ";$+=") && (missing"+P+" = "+q.util.toQuotedString(q.opts.jsonPointers?M:r)+") ) "}}$+=")) { ";var u="missing"+P,m="' + "+u+" + '";if(q.opts._errorDataPathProperty)q.errorPath=q.opts.jsonPointers?q.util.getPathExpr(R,u,!0):R+" + "+u;var S=S||[];if(S.push($),$="",q.createErrors!==!1){if($+=" { keyword: 'dependencies' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { property: '"+q.util.escapeQuotes(g)+"', missingProperty: '"+m+"', depsCount: "+n.length+", deps: '"+q.util.escapeQuotes(n.length==1?n[0]:n.join(", "))+"' } ",q.opts.messages!==!1){if($+=" , message: 'should have ",n.length==1)$+="property "+q.util.escapeQuotes(n[0]);else $+="properties "+q.util.escapeQuotes(n.join(", "));$+=" when property "+q.util.escapeQuotes(g)+" is present' "}if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";var I=$;if($=S.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+I+"]); ";else $+=" validate.errors = ["+I+"]; return false; ";else $+=" var err = "+I+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}else{$+=" ) { ";var D=n;if(D){var M,c=-1,e=D.length-1;while(c<e){M=D[c+=1];var r=q.util.getProperty(M),m=q.util.escapeQuotes(M),A=Y+r;if(q.opts._errorDataPathProperty)q.errorPath=q.util.getPath(R,M,q.opts.jsonPointers);if($+=" if ( "+A+" === undefined ",l)$+=" || ! Object.prototype.hasOwnProperty.call("+Y+", '"+q.util.escapeQuotes(M)+"') ";if($+=") { var err = ",q.createErrors!==!1){if($+=" { keyword: 'dependencies' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { property: '"+q.util.escapeQuotes(g)+"', missingProperty: '"+m+"', depsCount: "+n.length+", deps: '"+q.util.escapeQuotes(n.length==1?n[0]:n.join(", "))+"' } ",q.opts.messages!==!1){if($+=" , message: 'should have ",n.length==1)$+="property "+q.util.escapeQuotes(n[0]);else $+="properties "+q.util.escapeQuotes(n.join(", "));$+=" when property "+q.util.escapeQuotes(g)+" is present' "}if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";$+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } "}}}if($+=" } ",T)h+="}",$+=" else { "}q.errorPath=R;var L=H.baseId;for(var g in k){var N=k[g];if(q.opts.strictKeywords?typeof N=="object"&&Object.keys(N).length>0||N===!1:q.util.schemaHasRules(N,q.RULES.all)){if($+=" "+J+" = true; if ( "+Y+q.util.getProperty(g)+" !== undefined ",l)$+=" && Object.prototype.hasOwnProperty.call("+Y+", '"+q.util.escapeQuotes(g)+"') ";if($+=") { ",H.schema=N,H.schemaPath=w+q.util.getProperty(g),H.errSchemaPath=O+"/"+q.util.escapeFragment(g),$+=" "+q.validate(H)+" ",H.baseId=L,$+=" } ",T)$+=" if ("+J+") { ",h+="}"}}if(T)$+=" "+h+" if ("+z+" == errors) {";return $}});var pj=p((_p,Cj)=>{Cj.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,Y="data"+(j||""),z="valid"+P,H=q.opts.$data&&v&&v.$data,h;if(H)$+=" var schema"+P+" = "+q.util.getData(v.$data,j,q.dataPathArr)+"; ",h="schema"+P;else h=v;var J="i"+P,k="schema"+P;if(!H)$+=" var "+k+" = validate.schema"+w+";";if($+="var "+z+";",H)$+=" if (schema"+P+" === undefined) "+z+" = true; else if (!Array.isArray(schema"+P+")) "+z+" = false; else {";if($+=""+z+" = false;for (var "+J+"=0; "+J+"<"+k+".length; "+J+"++) if (equal("+Y+", "+k+"["+J+"])) { "+z+" = true; break; }",H)$+=" } ";$+=" if (!"+z+") { ";var X=X||[];if(X.push($),$="",q.createErrors!==!1){if($+=" { keyword: 'enum' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { allowedValues: schema"+P+" } ",q.opts.messages!==!1)$+=" , message: 'should be equal to one of the allowed values' ";if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";var l=$;if($=X.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+l+"]); ";else $+=" validate.errors = ["+l+"]; return false; ";else $+=" var err = "+l+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if($+=" }",T)$+=" else { ";return $}});var nj=p((fp,lj)=>{lj.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,Y="data"+(j||"");if(q.opts.format===!1){if(T)$+=" if (true) { ";return $}var z=q.opts.$data&&v&&v.$data,H;if(z)$+=" var schema"+P+" = "+q.util.getData(v.$data,j,q.dataPathArr)+"; ",H="schema"+P;else H=v;var h=q.opts.unknownFormats,J=Array.isArray(h);if(z){var k="format"+P,X="isObject"+P,l="formatType"+P;if($+=" var "+k+" = formats["+H+"]; var "+X+" = typeof "+k+" == 'object' && !("+k+" instanceof RegExp) && "+k+".validate; var "+l+" = "+X+" && "+k+".type || 'string'; if ("+X+") { ",q.async)$+=" var async"+P+" = "+k+".async; ";if($+=" "+k+" = "+k+".validate; } if ( ",z)$+=" ("+H+" !== undefined && typeof "+H+" != 'string') || ";if($+=" (",h!="ignore"){if($+=" ("+H+" && !"+k+" ",J)$+=" && self._opts.unknownFormats.indexOf("+H+") == -1 ";$+=") || "}if($+=" ("+k+" && "+l+" == '"+K+"' && !(typeof "+k+" == 'function' ? ",q.async)$+=" (async"+P+" ? await "+k+"("+Y+") : "+k+"("+Y+")) ";else $+=" "+k+"("+Y+") ";$+=" : "+k+".test("+Y+"))))) {"}else{var k=q.formats[v];if(!k)if(h=="ignore"){if(q.logger.warn('unknown format "'+v+'" ignored in schema at path "'+q.errSchemaPath+'"'),T)$+=" if (true) { ";return $}else if(J&&h.indexOf(v)>=0){if(T)$+=" if (true) { ";return $}else throw new Error('unknown format "'+v+'" is used in schema at path "'+q.errSchemaPath+'"');var X=typeof k=="object"&&!(k instanceof RegExp)&&k.validate,l=X&&k.type||"string";if(X){var N=k.async===!0;k=k.validate}if(l!=K){if(T)$+=" if (true) { ";return $}if(N){if(!q.async)throw new Error("async format in sync schema");var n="formats"+q.util.getProperty(v)+".validate";$+=" if (!(await "+n+"("+Y+"))) { "}else{$+=" if (! ";var n="formats"+q.util.getProperty(v);if(X)n+=".validate";if(typeof k=="function")$+=" "+n+"("+Y+") ";else $+=" "+n+".test("+Y+") ";$+=") { "}}var R=R||[];if(R.push($),$="",q.createErrors!==!1){if($+=" { keyword: 'format' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { format: ",z)$+=""+H;else $+=""+q.util.toQuotedString(v);if($+=" } ",q.opts.messages!==!1){if($+=` , message: 'should match format "`,z)$+="' + "+H+" + '";else $+=""+q.util.escapeQuotes(v);$+=`"' `}if(q.opts.verbose){if($+=" , schema: ",z)$+="validate.schema"+w;else $+=""+q.util.toQuotedString(v);$+=" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" "}$+=" } "}else $+=" {} ";var g=$;if($=R.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+g+"]); ";else $+=" validate.errors = ["+g+"]; return false; ";else $+=" var err = "+g+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if($+=" } ",T)$+=" else { ";return $}});var Ej=p(($p,Rj)=>{Rj.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,Y="data"+(j||""),z="valid"+P,H="errs__"+P,h=q.util.copy(q);h.level++;var J="valid"+h.level,k=q.schema.then,X=q.schema.else,l=k!==void 0&&(q.opts.strictKeywords?typeof k=="object"&&Object.keys(k).length>0||k===!1:q.util.schemaHasRules(k,q.RULES.all)),N=X!==void 0&&(q.opts.strictKeywords?typeof X=="object"&&Object.keys(X).length>0||X===!1:q.util.schemaHasRules(X,q.RULES.all)),n=h.baseId;if(l||N){var R;h.createErrors=!1,h.schema=v,h.schemaPath=w,h.errSchemaPath=O,$+=" var "+H+" = errors; var "+z+" = true; ";var g=q.compositeRule;if(q.compositeRule=h.compositeRule=!0,$+=" "+q.validate(h)+" ",h.baseId=n,h.createErrors=!0,$+=" errors = "+H+"; if (vErrors !== null) { if ("+H+") vErrors.length = "+H+"; else vErrors = null; } ",q.compositeRule=h.compositeRule=g,l){if($+=" if ("+J+") { ",h.schema=q.schema.then,h.schemaPath=q.schemaPath+".then",h.errSchemaPath=q.errSchemaPath+"/then",$+=" "+q.validate(h)+" ",h.baseId=n,$+=" "+z+" = "+J+"; ",l&&N)R="ifClause"+P,$+=" var "+R+" = 'then'; ";else R="'then'";if($+=" } ",N)$+=" else { "}else $+=" if (!"+J+") { ";if(N){if(h.schema=q.schema.else,h.schemaPath=q.schemaPath+".else",h.errSchemaPath=q.errSchemaPath+"/else",$+=" "+q.validate(h)+" ",h.baseId=n,$+=" "+z+" = "+J+"; ",l&&N)R="ifClause"+P,$+=" var "+R+" = 'else'; ";else R="'else'";$+=" } "}if($+=" if (!"+z+") { var err = ",q.createErrors!==!1){if($+=" { keyword: 'if' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { failingKeyword: "+R+" } ",q.opts.messages!==!1)$+=` , message: 'should match "' + `+R+` + '" schema' `;if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";if($+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(vErrors); ";else $+=" validate.errors = vErrors; return false; ";if($+=" } ",T)$+=" else { "}else if(T)$+=" if (true) { ";return $}});var dj=p((Kp,gj)=>{gj.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,Y="data"+(j||""),z="valid"+P,H="errs__"+P,h=q.util.copy(q),J="";h.level++;var k="valid"+h.level,X="i"+P,l=h.dataLevel=q.dataLevel+1,N="data"+l,n=q.baseId;if($+="var "+H+" = errors;var "+z+";",Array.isArray(v)){var R=q.schema.additionalItems;if(R===!1){$+=" "+z+" = "+Y+".length <= "+v.length+"; ";var g=O;O=q.errSchemaPath+"/additionalItems",$+=" if (!"+z+") { ";var V=V||[];if(V.push($),$="",q.createErrors!==!1){if($+=" { keyword: 'additionalItems' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { limit: "+v.length+" } ",q.opts.messages!==!1)$+=" , message: 'should NOT have more than "+v.length+" items' ";if(q.opts.verbose)$+=" , schema: false , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";var M=$;if($=V.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+M+"]); ";else $+=" validate.errors = ["+M+"]; return false; ";else $+=" var err = "+M+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if($+=" } ",O=g,T)J+="}",$+=" else { "}var C=v;if(C){var a,r=-1,A=C.length-1;while(r<A)if(a=C[r+=1],q.opts.strictKeywords?typeof a=="object"&&Object.keys(a).length>0||a===!1:q.util.schemaHasRules(a,q.RULES.all)){$+=" "+k+" = true; if ("+Y+".length > "+r+") { ";var u=Y+"["+r+"]";h.schema=a,h.schemaPath=w+"["+r+"]",h.errSchemaPath=O+"/"+r,h.errorPath=q.util.getPathExpr(q.errorPath,r,q.opts.jsonPointers,!0),h.dataPathArr[l]=r;var m=q.validate(h);if(h.baseId=n,q.util.varOccurences(m,N)<2)$+=" "+q.util.varReplace(m,N,u)+" ";else $+=" var "+N+" = "+u+"; "+m+" ";if($+=" } ",T)$+=" if ("+k+") { ",J+="}"}}if(typeof R=="object"&&(q.opts.strictKeywords?typeof R=="object"&&Object.keys(R).length>0||R===!1:q.util.schemaHasRules(R,q.RULES.all))){h.schema=R,h.schemaPath=q.schemaPath+".additionalItems",h.errSchemaPath=q.errSchemaPath+"/additionalItems",$+=" "+k+" = true; if ("+Y+".length > "+v.length+") { for (var "+X+" = "+v.length+"; "+X+" < "+Y+".length; "+X+"++) { ",h.errorPath=q.util.getPathExpr(q.errorPath,X,q.opts.jsonPointers,!0);var u=Y+"["+X+"]";h.dataPathArr[l]=X;var m=q.validate(h);if(h.baseId=n,q.util.varOccurences(m,N)<2)$+=" "+q.util.varReplace(m,N,u)+" ";else $+=" var "+N+" = "+u+"; "+m+" ";if(T)$+=" if (!"+k+") break; ";if($+=" } } ",T)$+=" if ("+k+") { ",J+="}"}}else if(q.opts.strictKeywords?typeof v=="object"&&Object.keys(v).length>0||v===!1:q.util.schemaHasRules(v,q.RULES.all)){h.schema=v,h.schemaPath=w,h.errSchemaPath=O,$+=" for (var "+X+" = 0; "+X+" < "+Y+".length; "+X+"++) { ",h.errorPath=q.util.getPathExpr(q.errorPath,X,q.opts.jsonPointers,!0);var u=Y+"["+X+"]";h.dataPathArr[l]=X;var m=q.validate(h);if(h.baseId=n,q.util.varOccurences(m,N)<2)$+=" "+q.util.varReplace(m,N,u)+" ";else $+=" var "+N+" = "+u+"; "+m+" ";if(T)$+=" if (!"+k+") break; ";$+=" }"}if(T)$+=" "+J+" if ("+H+" == errors) {";return $}});var ZP=p((Pp,aj)=>{aj.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,n,Y="data"+(j||""),z=q.opts.$data&&v&&v.$data,H;if(z)$+=" var schema"+P+" = "+q.util.getData(v.$data,j,q.dataPathArr)+"; ",H="schema"+P;else H=v;var h=f=="maximum",J=h?"exclusiveMaximum":"exclusiveMinimum",k=q.schema[J],X=q.opts.$data&&k&&k.$data,l=h?"<":">",N=h?">":"<",n=void 0;if(!(z||typeof v=="number"||v===void 0))throw new Error(f+" must be number");if(!(X||k===void 0||typeof k=="number"||typeof k=="boolean"))throw new Error(J+" must be number or boolean");if(X){var R=q.util.getData(k.$data,j,q.dataPathArr),g="exclusive"+P,V="exclType"+P,M="exclIsNumber"+P,C="op"+P,a="' + "+C+" + '";$+=" var schemaExcl"+P+" = "+R+"; ",R="schemaExcl"+P,$+=" var "+g+"; var "+V+" = typeof "+R+"; if ("+V+" != 'boolean' && "+V+" != 'undefined' && "+V+" != 'number') { ";var n=J,r=r||[];if(r.push($),$="",q.createErrors!==!1){if($+=" { keyword: '"+(n||"_exclusiveLimit")+"' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: {} ",q.opts.messages!==!1)$+=" , message: '"+J+" should be boolean' ";if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";var A=$;if($=r.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+A+"]); ";else $+=" validate.errors = ["+A+"]; return false; ";else $+=" var err = "+A+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if($+=" } else if ( ",z)$+=" ("+H+" !== undefined && typeof "+H+" != 'number') || ";if($+=" "+V+" == 'number' ? ( ("+g+" = "+H+" === undefined || "+R+" "+l+"= "+H+") ? "+Y+" "+N+"= "+R+" : "+Y+" "+N+" "+H+" ) : ( ("+g+" = "+R+" === true) ? "+Y+" "+N+"= "+H+" : "+Y+" "+N+" "+H+" ) || "+Y+" !== "+Y+") { var op"+P+" = "+g+" ? '"+l+"' : '"+l+"='; ",v===void 0)n=J,O=q.errSchemaPath+"/"+J,H=R,z=X}else{var M=typeof k=="number",a=l;if(M&&z){var C="'"+a+"'";if($+=" if ( ",z)$+=" ("+H+" !== undefined && typeof "+H+" != 'number') || ";$+=" ( "+H+" === undefined || "+k+" "+l+"= "+H+" ? "+Y+" "+N+"= "+k+" : "+Y+" "+N+" "+H+" ) || "+Y+" !== "+Y+") { "}else{if(M&&v===void 0)g=!0,n=J,O=q.errSchemaPath+"/"+J,H=k,N+="=";else{if(M)H=Math[h?"min":"max"](k,v);if(k===(M?H:!0))g=!0,n=J,O=q.errSchemaPath+"/"+J,N+="=";else g=!1,a+="="}var C="'"+a+"'";if($+=" if ( ",z)$+=" ("+H+" !== undefined && typeof "+H+" != 'number') || ";$+=" "+Y+" "+N+" "+H+" || "+Y+" !== "+Y+") { "}}n=n||f;var r=r||[];if(r.push($),$="",q.createErrors!==!1){if($+=" { keyword: '"+(n||"_limit")+"' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { comparison: "+C+", limit: "+H+", exclusive: "+g+" } ",q.opts.messages!==!1)if($+=" , message: 'should be "+a+" ",z)$+="' + "+H;else $+=""+H+"'";if(q.opts.verbose){if($+=" , schema: ",z)$+="validate.schema"+w;else $+=""+v;$+=" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" "}$+=" } "}else $+=" {} ";var A=$;if($=r.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+A+"]); ";else $+=" validate.errors = ["+A+"]; return false; ";else $+=" var err = "+A+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if($+=" } ",T)$+=" else { ";return $}});var XP=p((jp,Ij)=>{Ij.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,J,Y="data"+(j||""),z=q.opts.$data&&v&&v.$data,H;if(z)$+=" var schema"+P+" = "+q.util.getData(v.$data,j,q.dataPathArr)+"; ",H="schema"+P;else H=v;if(!(z||typeof v=="number"))throw new Error(f+" must be number");var h=f=="maxItems"?">":"<";if($+="if ( ",z)$+=" ("+H+" !== undefined && typeof "+H+" != 'number') || ";$+=" "+Y+".length "+h+" "+H+") { ";var J=f,k=k||[];if(k.push($),$="",q.createErrors!==!1){if($+=" { keyword: '"+(J||"_limitItems")+"' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { limit: "+H+" } ",q.opts.messages!==!1){if($+=" , message: 'should NOT have ",f=="maxItems")$+="more";else $+="fewer";if($+=" than ",z)$+="' + "+H+" + '";else $+=""+v;$+=" items' "}if(q.opts.verbose){if($+=" , schema: ",z)$+="validate.schema"+w;else $+=""+v;$+=" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" "}$+=" } "}else $+=" {} ";var X=$;if($=k.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+X+"]); ";else $+=" validate.errors = ["+X+"]; return false; ";else $+=" var err = "+X+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if($+="} ",T)$+=" else { ";return $}});var AP=p((vp,Dj)=>{Dj.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,J,Y="data"+(j||""),z=q.opts.$data&&v&&v.$data,H;if(z)$+=" var schema"+P+" = "+q.util.getData(v.$data,j,q.dataPathArr)+"; ",H="schema"+P;else H=v;if(!(z||typeof v=="number"))throw new Error(f+" must be number");var h=f=="maxLength"?">":"<";if($+="if ( ",z)$+=" ("+H+" !== undefined && typeof "+H+" != 'number') || ";if(q.opts.unicode===!1)$+=" "+Y+".length ";else $+=" ucs2length("+Y+") ";$+=" "+h+" "+H+") { ";var J=f,k=k||[];if(k.push($),$="",q.createErrors!==!1){if($+=" { keyword: '"+(J||"_limitLength")+"' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { limit: "+H+" } ",q.opts.messages!==!1){if($+=" , message: 'should NOT be ",f=="maxLength")$+="longer";else $+="shorter";if($+=" than ",z)$+="' + "+H+" + '";else $+=""+v;$+=" characters' "}if(q.opts.verbose){if($+=" , schema: ",z)$+="validate.schema"+w;else $+=""+v;$+=" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" "}$+=" } "}else $+=" {} ";var X=$;if($=k.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+X+"]); ";else $+=" validate.errors = ["+X+"]; return false; ";else $+=" var err = "+X+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if($+="} ",T)$+=" else { ";return $}});var uP=p((wp,yj)=>{yj.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,J,Y="data"+(j||""),z=q.opts.$data&&v&&v.$data,H;if(z)$+=" var schema"+P+" = "+q.util.getData(v.$data,j,q.dataPathArr)+"; ",H="schema"+P;else H=v;if(!(z||typeof v=="number"))throw new Error(f+" must be number");var h=f=="maxProperties"?">":"<";if($+="if ( ",z)$+=" ("+H+" !== undefined && typeof "+H+" != 'number') || ";$+=" Object.keys("+Y+").length "+h+" "+H+") { ";var J=f,k=k||[];if(k.push($),$="",q.createErrors!==!1){if($+=" { keyword: '"+(J||"_limitProperties")+"' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { limit: "+H+" } ",q.opts.messages!==!1){if($+=" , message: 'should NOT have ",f=="maxProperties")$+="more";else $+="fewer";if($+=" than ",z)$+="' + "+H+" + '";else $+=""+v;$+=" properties' "}if(q.opts.verbose){if($+=" , schema: ",z)$+="validate.schema"+w;else $+=""+v;$+=" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" "}$+=" } "}else $+=" {} ";var X=$;if($=k.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+X+"]); ";else $+=" validate.errors = ["+X+"]; return false; ";else $+=" var err = "+X+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if($+="} ",T)$+=" else { ";return $}});var oj=p((Op,ij)=>{ij.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,Y="data"+(j||""),z=q.opts.$data&&v&&v.$data,H;if(z)$+=" var schema"+P+" = "+q.util.getData(v.$data,j,q.dataPathArr)+"; ",H="schema"+P;else H=v;if(!(z||typeof v=="number"))throw new Error(f+" must be number");if($+="var division"+P+";if (",z)$+=" "+H+" !== undefined && ( typeof "+H+" != 'number' || ";if($+=" (division"+P+" = "+Y+" / "+H+", ",q.opts.multipleOfPrecision)$+=" Math.abs(Math.round(division"+P+") - division"+P+") > 1e-"+q.opts.multipleOfPrecision+" ";else $+=" division"+P+" !== parseInt(division"+P+") ";if($+=" ) ",z)$+=" ) ";$+=" ) { ";var h=h||[];if(h.push($),$="",q.createErrors!==!1){if($+=" { keyword: 'multipleOf' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { multipleOf: "+H+" } ",q.opts.messages!==!1)if($+=" , message: 'should be multiple of ",z)$+="' + "+H;else $+=""+H+"'";if(q.opts.verbose){if($+=" , schema: ",z)$+="validate.schema"+w;else $+=""+v;$+=" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" "}$+=" } "}else $+=" {} ";var J=$;if($=h.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+J+"]); ";else $+=" validate.errors = ["+J+"]; return false; ";else $+=" var err = "+J+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if($+="} ",T)$+=" else { ";return $}});var Lj=p((Yp,cj)=>{cj.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,Y="data"+(j||""),z="errs__"+P,H=q.util.copy(q);H.level++;var h="valid"+H.level;if(q.opts.strictKeywords?typeof v=="object"&&Object.keys(v).length>0||v===!1:q.util.schemaHasRules(v,q.RULES.all)){H.schema=v,H.schemaPath=w,H.errSchemaPath=O,$+=" var "+z+" = errors; ";var J=q.compositeRule;q.compositeRule=H.compositeRule=!0,H.createErrors=!1;var k;if(H.opts.allErrors)k=H.opts.allErrors,H.opts.allErrors=!1;if($+=" "+q.validate(H)+" ",H.createErrors=!0,k)H.opts.allErrors=k;q.compositeRule=H.compositeRule=J,$+=" if ("+h+") { ";var X=X||[];if(X.push($),$="",q.createErrors!==!1){if($+=" { keyword: 'not' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: {} ",q.opts.messages!==!1)$+=" , message: 'should NOT be valid' ";if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";var l=$;if($=X.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+l+"]); ";else $+=" validate.errors = ["+l+"]; return false; ";else $+=" var err = "+l+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if($+=" } else { errors = "+z+"; if (vErrors !== null) { if ("+z+") vErrors.length = "+z+"; else vErrors = null; } ",q.opts.allErrors)$+=" } "}else{if($+=" var err = ",q.createErrors!==!1){if($+=" { keyword: 'not' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: {} ",q.opts.messages!==!1)$+=" , message: 'should NOT be valid' ";if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";if($+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",T)$+=" if (false) { "}return $}});var ej=p((Tp,tj)=>{tj.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,Y="data"+(j||""),z="valid"+P,H="errs__"+P,h=q.util.copy(q),J="";h.level++;var k="valid"+h.level,X=h.baseId,l="prevValid"+P,N="passingSchemas"+P;$+="var "+H+" = errors , "+l+" = false , "+z+" = false , "+N+" = null; ";var n=q.compositeRule;q.compositeRule=h.compositeRule=!0;var R=v;if(R){var g,V=-1,M=R.length-1;while(V<M){if(g=R[V+=1],q.opts.strictKeywords?typeof g=="object"&&Object.keys(g).length>0||g===!1:q.util.schemaHasRules(g,q.RULES.all))h.schema=g,h.schemaPath=w+"["+V+"]",h.errSchemaPath=O+"/"+V,$+=" "+q.validate(h)+" ",h.baseId=X;else $+=" var "+k+" = true; ";if(V)$+=" if ("+k+" && "+l+") { "+z+" = false; "+N+" = ["+N+", "+V+"]; } else { ",J+="}";$+=" if ("+k+") { "+z+" = "+l+" = true; "+N+" = "+V+"; }"}}if(q.compositeRule=h.compositeRule=n,$+=""+J+"if (!"+z+") { var err = ",q.createErrors!==!1){if($+=" { keyword: 'oneOf' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { passingSchemas: "+N+" } ",q.opts.messages!==!1)$+=" , message: 'should match exactly one schema in oneOf' ";if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";if($+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(vErrors); ";else $+=" validate.errors = vErrors; return false; ";if($+="} else { errors = "+H+"; if (vErrors !== null) { if ("+H+") vErrors.length = "+H+"; else vErrors = null; }",q.opts.allErrors)$+=" } ";return $}});var sj=p((zp,xj)=>{xj.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,Y="data"+(j||""),z=q.opts.$data&&v&&v.$data,H;if(z)$+=" var schema"+P+" = "+q.util.getData(v.$data,j,q.dataPathArr)+"; ",H="schema"+P;else H=v;var h=z?"(new RegExp("+H+"))":q.usePattern(v);if($+="if ( ",z)$+=" ("+H+" !== undefined && typeof "+H+" != 'string') || ";$+=" !"+h+".test("+Y+") ) { ";var J=J||[];if(J.push($),$="",q.createErrors!==!1){if($+=" { keyword: 'pattern' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { pattern: ",z)$+=""+H;else $+=""+q.util.toQuotedString(v);if($+=" } ",q.opts.messages!==!1){if($+=` , message: 'should match pattern "`,z)$+="' + "+H+" + '";else $+=""+q.util.escapeQuotes(v);$+=`"' `}if(q.opts.verbose){if($+=" , schema: ",z)$+="validate.schema"+w;else $+=""+q.util.toQuotedString(v);$+=" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" "}$+=" } "}else $+=" {} ";var k=$;if($=J.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+k+"]); ";else $+=" validate.errors = ["+k+"]; return false; ";else $+=" var err = "+k+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if($+="} ",T)$+=" else { ";return $}});var Uj=p((Wp,Bj)=>{Bj.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,Y="data"+(j||""),z="errs__"+P,H=q.util.copy(q),h="";H.level++;var J="valid"+H.level,k="key"+P,X="idx"+P,l=H.dataLevel=q.dataLevel+1,N="data"+l,n="dataProperties"+P,R=Object.keys(v||{}).filter(c),g=q.schema.patternProperties||{},V=Object.keys(g).filter(c),M=q.schema.additionalProperties,C=R.length||V.length,a=M===!1,r=typeof M=="object"&&Object.keys(M).length,A=q.opts.removeAdditional,u=a||r||A,m=q.opts.ownProperties,S=q.baseId,I=q.schema.required;if(I&&!(q.opts.$data&&I.$data)&&I.length<q.opts.loopRequired)var D=q.util.toHash(I);function c(Y_){return Y_!=="__proto__"}if($+="var "+z+" = errors;var "+J+" = true;",m)$+=" var "+n+" = undefined;";if(u){if(m)$+=" "+n+" = "+n+" || Object.keys("+Y+"); for (var "+X+"=0; "+X+"<"+n+".length; "+X+"++) { var "+k+" = "+n+"["+X+"]; ";else $+=" for (var "+k+" in "+Y+") { ";if(C){if($+=" var isAdditional"+P+" = !(false ",R.length)if(R.length>8)$+=" || validate.schema"+w+".hasOwnProperty("+k+") ";else{var e=R;if(e){var L,Q=-1,Hq=e.length-1;while(Q<Hq)L=e[Q+=1],$+=" || "+k+" == "+q.util.toQuotedString(L)+" "}}if(V.length){var Pq=V;if(Pq){var _q,kq=-1,gq=Pq.length-1;while(kq<gq)_q=Pq[kq+=1],$+=" || "+q.usePattern(_q)+".test("+k+") "}}$+=" ); if (isAdditional"+P+") { "}if(A=="all")$+=" delete "+Y+"["+k+"]; ";else{var iq=q.errorPath,x_="' + "+k+" + '";if(q.opts._errorDataPathProperty)q.errorPath=q.util.getPathExpr(q.errorPath,k,q.opts.jsonPointers);if(a)if(A)$+=" delete "+Y+"["+k+"]; ";else{$+=" "+J+" = false; ";var n_=O;O=q.errSchemaPath+"/additionalProperties";var Nq=Nq||[];if(Nq.push($),$="",q.createErrors!==!1){if($+=" { keyword: 'additionalProperties' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { additionalProperty: '"+x_+"' } ",q.opts.messages!==!1){if($+=" , message: '",q.opts._errorDataPathProperty)$+="is an invalid additional property";else $+="should NOT have additional properties";$+="' "}if(q.opts.verbose)$+=" , schema: false , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";var Vq=$;if($=Nq.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+Vq+"]); ";else $+=" validate.errors = ["+Vq+"]; return false; ";else $+=" var err = "+Vq+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if(O=n_,T)$+=" break; "}else if(r)if(A=="failing"){$+=" var "+z+" = errors; ";var H8=q.compositeRule;q.compositeRule=H.compositeRule=!0,H.schema=M,H.schemaPath=q.schemaPath+".additionalProperties",H.errSchemaPath=q.errSchemaPath+"/additionalProperties",H.errorPath=q.opts._errorDataPathProperty?q.errorPath:q.util.getPathExpr(q.errorPath,k,q.opts.jsonPointers);var Dq=Y+"["+k+"]";H.dataPathArr[l]=k;var zq=q.validate(H);if(H.baseId=S,q.util.varOccurences(zq,N)<2)$+=" "+q.util.varReplace(zq,N,Dq)+" ";else $+=" var "+N+" = "+Dq+"; "+zq+" ";$+=" if (!"+J+") { errors = "+z+"; if (validate.errors !== null) { if (errors) validate.errors.length = errors; else validate.errors = null; } delete "+Y+"["+k+"]; } ",q.compositeRule=H.compositeRule=H8}else{H.schema=M,H.schemaPath=q.schemaPath+".additionalProperties",H.errSchemaPath=q.errSchemaPath+"/additionalProperties",H.errorPath=q.opts._errorDataPathProperty?q.errorPath:q.util.getPathExpr(q.errorPath,k,q.opts.jsonPointers);var Dq=Y+"["+k+"]";H.dataPathArr[l]=k;var zq=q.validate(H);if(H.baseId=S,q.util.varOccurences(zq,N)<2)$+=" "+q.util.varReplace(zq,N,Dq)+" ";else $+=" var "+N+" = "+Dq+"; "+zq+" ";if(T)$+=" if (!"+J+") break; "}q.errorPath=iq}if(C)$+=" } ";if($+=" } ",T)$+=" if ("+J+") { ",h+="}"}var s_=q.opts.useDefaults&&!q.compositeRule;if(R.length){var R_=R;if(R_){var L,h8=-1,J8=R_.length-1;while(h8<J8){L=R_[h8+=1];var dq=v[L];if(q.opts.strictKeywords?typeof dq=="object"&&Object.keys(dq).length>0||dq===!1:q.util.schemaHasRules(dq,q.RULES.all)){var __=q.util.getProperty(L),Dq=Y+__,tq=s_&&dq.default!==void 0;H.schema=dq,H.schemaPath=w+__,H.errSchemaPath=O+"/"+q.util.escapeFragment(L),H.errorPath=q.util.getPath(q.errorPath,L,q.opts.jsonPointers),H.dataPathArr[l]=q.util.toQuotedString(L);var zq=q.validate(H);if(H.baseId=S,q.util.varOccurences(zq,N)<2){zq=q.util.varReplace(zq,N,Dq);var oq=Dq}else{var oq=N;$+=" var "+N+" = "+Dq+"; "}if(tq)$+=" "+zq+" ";else{if(D&&D[L]){if($+=" if ( "+oq+" === undefined ",m)$+=" || ! Object.prototype.hasOwnProperty.call("+Y+", '"+q.util.escapeQuotes(L)+"') ";$+=") { "+J+" = false; ";var iq=q.errorPath,n_=O,G_=q.util.escapeQuotes(L);if(q.opts._errorDataPathProperty)q.errorPath=q.util.getPath(iq,L,q.opts.jsonPointers);O=q.errSchemaPath+"/required";var Nq=Nq||[];if(Nq.push($),$="",q.createErrors!==!1){if($+=" { keyword: 'required' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { missingProperty: '"+G_+"' } ",q.opts.messages!==!1){if($+=" , message: '",q.opts._errorDataPathProperty)$+="is a required property";else $+="should have required property \\'"+G_+"\\'";$+="' "}if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";var Vq=$;if($=Nq.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+Vq+"]); ";else $+=" validate.errors = ["+Vq+"]; return false; ";else $+=" var err = "+Vq+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";O=n_,q.errorPath=iq,$+=" } else { "}else if(T){if($+=" if ( "+oq+" === undefined ",m)$+=" || ! Object.prototype.hasOwnProperty.call("+Y+", '"+q.util.escapeQuotes(L)+"') ";$+=") { "+J+" = true; } else { "}else{if($+=" if ("+oq+" !== undefined ",m)$+=" && Object.prototype.hasOwnProperty.call("+Y+", '"+q.util.escapeQuotes(L)+"') ";$+=" ) { "}$+=" "+zq+" } "}}if(T)$+=" if ("+J+") { ",h+="}"}}}if(V.length){var Uq=V;if(Uq){var _q,n6=-1,RK=Uq.length-1;while(n6<RK){_q=Uq[n6+=1];var dq=g[_q];if(q.opts.strictKeywords?typeof dq=="object"&&Object.keys(dq).length>0||dq===!1:q.util.schemaHasRules(dq,q.RULES.all)){if(H.schema=dq,H.schemaPath=q.schemaPath+".patternProperties"+q.util.getProperty(_q),H.errSchemaPath=q.errSchemaPath+"/patternProperties/"+q.util.escapeFragment(_q),m)$+=" "+n+" = "+n+" || Object.keys("+Y+"); for (var "+X+"=0; "+X+"<"+n+".length; "+X+"++) { var "+k+" = "+n+"["+X+"]; ";else $+=" for (var "+k+" in "+Y+") { ";$+=" if ("+q.usePattern(_q)+".test("+k+")) { ",H.errorPath=q.util.getPathExpr(q.errorPath,k,q.opts.jsonPointers);var Dq=Y+"["+k+"]";H.dataPathArr[l]=k;var zq=q.validate(H);if(H.baseId=S,q.util.varOccurences(zq,N)<2)$+=" "+q.util.varReplace(zq,N,Dq)+" ";else $+=" var "+N+" = "+Dq+"; "+zq+" ";if(T)$+=" if (!"+J+") break; ";if($+=" } ",T)$+=" else "+J+" = true; ";if($+=" } ",T)$+=" if ("+J+") { ",h+="}"}}}}if(T)$+=" "+h+" if ("+z+" == errors) {";return $}});var Qj=p((Hp,Fj)=>{Fj.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,Y="data"+(j||""),z="errs__"+P,H=q.util.copy(q),h="";H.level++;var J="valid"+H.level;if($+="var "+z+" = errors;",q.opts.strictKeywords?typeof v=="object"&&Object.keys(v).length>0||v===!1:q.util.schemaHasRules(v,q.RULES.all)){H.schema=v,H.schemaPath=w,H.errSchemaPath=O;var k="key"+P,X="idx"+P,l="i"+P,N="' + "+k+" + '",n=H.dataLevel=q.dataLevel+1,R="data"+n,g="dataProperties"+P,V=q.opts.ownProperties,M=q.baseId;if(V)$+=" var "+g+" = undefined; ";if(V)$+=" "+g+" = "+g+" || Object.keys("+Y+"); for (var "+X+"=0; "+X+"<"+g+".length; "+X+"++) { var "+k+" = "+g+"["+X+"]; ";else $+=" for (var "+k+" in "+Y+") { ";$+=" var startErrs"+P+" = errors; ";var C=k,a=q.compositeRule;q.compositeRule=H.compositeRule=!0;var r=q.validate(H);if(H.baseId=M,q.util.varOccurences(r,R)<2)$+=" "+q.util.varReplace(r,R,C)+" ";else $+=" var "+R+" = "+C+"; "+r+" ";if(q.compositeRule=H.compositeRule=a,$+=" if (!"+J+") { for (var "+l+"=startErrs"+P+"; "+l+"<errors; "+l+"++) { vErrors["+l+"].propertyName = "+k+"; } var err = ",q.createErrors!==!1){if($+=" { keyword: 'propertyNames' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { propertyName: '"+N+"' } ",q.opts.messages!==!1)$+=" , message: 'property name \\'"+N+"\\' is invalid' ";if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";if($+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(vErrors); ";else $+=" validate.errors = vErrors; return false; ";if(T)$+=" break; ";$+=" } }"}if(T)$+=" "+h+" if ("+z+" == errors) {";return $}});var _9=p((hp,q9)=>{q9.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,Y="data"+(j||""),z="valid"+P,H=q.opts.$data&&v&&v.$data,h;if(H)$+=" var schema"+P+" = "+q.util.getData(v.$data,j,q.dataPathArr)+"; ",h="schema"+P;else h=v;var J="schema"+P;if(!H)if(v.length<q.opts.loopRequired&&q.schema.properties&&Object.keys(q.schema.properties).length){var k=[],X=v;if(X){var l,N=-1,n=X.length-1;while(N<n){l=X[N+=1];var R=q.schema.properties[l];if(!(R&&(q.opts.strictKeywords?typeof R=="object"&&Object.keys(R).length>0||R===!1:q.util.schemaHasRules(R,q.RULES.all))))k[k.length]=l}}}else var k=v;if(H||k.length){var g=q.errorPath,V=H||k.length>=q.opts.loopRequired,M=q.opts.ownProperties;if(T)if($+=" var missing"+P+"; ",V){if(!H)$+=" var "+J+" = validate.schema"+w+"; ";var C="i"+P,a="schema"+P+"["+C+"]",r="' + "+a+" + '";if(q.opts._errorDataPathProperty)q.errorPath=q.util.getPathExpr(g,a,q.opts.jsonPointers);if($+=" var "+z+" = true; ",H)$+=" if (schema"+P+" === undefined) "+z+" = true; else if (!Array.isArray(schema"+P+")) "+z+" = false; else {";if($+=" for (var "+C+" = 0; "+C+" < "+J+".length; "+C+"++) { "+z+" = "+Y+"["+J+"["+C+"]] !== undefined ",M)$+=" && Object.prototype.hasOwnProperty.call("+Y+", "+J+"["+C+"]) ";if($+="; if (!"+z+") break; } ",H)$+=" } ";$+=" if (!"+z+") { ";var A=A||[];if(A.push($),$="",q.createErrors!==!1){if($+=" { keyword: 'required' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { missingProperty: '"+r+"' } ",q.opts.messages!==!1){if($+=" , message: '",q.opts._errorDataPathProperty)$+="is a required property";else $+="should have required property \\'"+r+"\\'";$+="' "}if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";var u=$;if($=A.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+u+"]); ";else $+=" validate.errors = ["+u+"]; return false; ";else $+=" var err = "+u+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";$+=" } else { "}else{$+=" if ( ";var m=k;if(m){var S,C=-1,I=m.length-1;while(C<I){if(S=m[C+=1],C)$+=" || ";var D=q.util.getProperty(S),c=Y+D;if($+=" ( ( "+c+" === undefined ",M)$+=" || ! Object.prototype.hasOwnProperty.call("+Y+", '"+q.util.escapeQuotes(S)+"') ";$+=") && (missing"+P+" = "+q.util.toQuotedString(q.opts.jsonPointers?S:D)+") ) "}}$+=") { ";var a="missing"+P,r="' + "+a+" + '";if(q.opts._errorDataPathProperty)q.errorPath=q.opts.jsonPointers?q.util.getPathExpr(g,a,!0):g+" + "+a;var A=A||[];if(A.push($),$="",q.createErrors!==!1){if($+=" { keyword: 'required' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { missingProperty: '"+r+"' } ",q.opts.messages!==!1){if($+=" , message: '",q.opts._errorDataPathProperty)$+="is a required property";else $+="should have required property \\'"+r+"\\'";$+="' "}if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";var u=$;if($=A.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+u+"]); ";else $+=" validate.errors = ["+u+"]; return false; ";else $+=" var err = "+u+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";$+=" } else { "}else if(V){if(!H)$+=" var "+J+" = validate.schema"+w+"; ";var C="i"+P,a="schema"+P+"["+C+"]",r="' + "+a+" + '";if(q.opts._errorDataPathProperty)q.errorPath=q.util.getPathExpr(g,a,q.opts.jsonPointers);if(H){if($+=" if ("+J+" && !Array.isArray("+J+")) { var err = ",q.createErrors!==!1){if($+=" { keyword: 'required' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { missingProperty: '"+r+"' } ",q.opts.messages!==!1){if($+=" , message: '",q.opts._errorDataPathProperty)$+="is a required property";else $+="should have required property \\'"+r+"\\'";$+="' "}if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";$+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } else if ("+J+" !== undefined) { "}if($+=" for (var "+C+" = 0; "+C+" < "+J+".length; "+C+"++) { if ("+Y+"["+J+"["+C+"]] === undefined ",M)$+=" || ! Object.prototype.hasOwnProperty.call("+Y+", "+J+"["+C+"]) ";if($+=") { var err = ",q.createErrors!==!1){if($+=" { keyword: 'required' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { missingProperty: '"+r+"' } ",q.opts.messages!==!1){if($+=" , message: '",q.opts._errorDataPathProperty)$+="is a required property";else $+="should have required property \\'"+r+"\\'";$+="' "}if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";if($+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } } ",H)$+=" } "}else{var e=k;if(e){var S,L=-1,Q=e.length-1;while(L<Q){S=e[L+=1];var D=q.util.getProperty(S),r=q.util.escapeQuotes(S),c=Y+D;if(q.opts._errorDataPathProperty)q.errorPath=q.util.getPath(g,S,q.opts.jsonPointers);if($+=" if ( "+c+" === undefined ",M)$+=" || ! Object.prototype.hasOwnProperty.call("+Y+", '"+q.util.escapeQuotes(S)+"') ";if($+=") { var err = ",q.createErrors!==!1){if($+=" { keyword: 'required' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { missingProperty: '"+r+"' } ",q.opts.messages!==!1){if($+=" , message: '",q.opts._errorDataPathProperty)$+="is a required property";else $+="should have required property \\'"+r+"\\'";$+="' "}if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" ";$+=" } "}else $+=" {} ";$+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } "}}}q.errorPath=g}else if(T)$+=" if (true) {";return $}});var $9=p((Jp,f9)=>{f9.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,Y="data"+(j||""),z="valid"+P,H=q.opts.$data&&v&&v.$data,h;if(H)$+=" var schema"+P+" = "+q.util.getData(v.$data,j,q.dataPathArr)+"; ",h="schema"+P;else h=v;if((v||H)&&q.opts.uniqueItems!==!1){if(H)$+=" var "+z+"; if ("+h+" === false || "+h+" === undefined) "+z+" = true; else if (typeof "+h+" != 'boolean') "+z+" = false; else { ";$+=" var i = "+Y+".length , "+z+" = true , j; if (i > 1) { ";var J=q.schema.items&&q.schema.items.type,k=Array.isArray(J);if(!J||J=="object"||J=="array"||k&&(J.indexOf("object")>=0||J.indexOf("array")>=0))$+=" outer: for (;i--;) { for (j = i; j--;) { if (equal("+Y+"[i], "+Y+"[j])) { "+z+" = false; break outer; } } } ";else{$+=" var itemIndices = {}, item; for (;i--;) { var item = "+Y+"[i]; ";var X="checkDataType"+(k?"s":"");if($+=" if ("+q.util[X](J,"item",q.opts.strictNumbers,!0)+") continue; ",k)$+=` if (typeof item == 'string') item = '"' + item; `;$+=" if (typeof itemIndices[item] == 'number') { "+z+" = false; j = itemIndices[item]; break; } itemIndices[item] = i; } "}if($+=" } ",H)$+=" } ";$+=" if (!"+z+") { ";var l=l||[];if(l.push($),$="",q.createErrors!==!1){if($+=" { keyword: 'uniqueItems' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { i: i, j: j } ",q.opts.messages!==!1)$+=" , message: 'should NOT have duplicate items (items ## ' + j + ' and ' + i + ' are identical)' ";if(q.opts.verbose){if($+=" , schema: ",H)$+="validate.schema"+w;else $+=""+v;$+=" , parentSchema: validate.schema"+q.schemaPath+" , data: "+Y+" "}$+=" } "}else $+=" {} ";var N=$;if($=l.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+N+"]); ";else $+=" validate.errors = ["+N+"]; return false; ";else $+=" var err = "+N+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";if($+=" } ",T)$+=" else { "}else if(T)$+=" if (true) { ";return $}});var P9=p((kp,K9)=>{K9.exports={$ref:kj(),allOf:Xj(),anyOf:uj(),$comment:mj(),const:bj(),contains:Mj(),dependencies:Nj(),enum:pj(),format:nj(),if:Ej(),items:dj(),maximum:ZP(),minimum:ZP(),maxItems:XP(),minItems:XP(),maxLength:AP(),minLength:AP(),maxProperties:uP(),minProperties:uP(),multipleOf:oj(),not:Lj(),oneOf:ej(),pattern:sj(),properties:Uj(),propertyNames:Qj(),required:_9(),uniqueItems:$9(),validate:JP()}});var w9=p((Zp,v9)=>{var j9=P9(),GP=b8().toHash;v9.exports=function _(){var q=[{type:"number",rules:[{maximum:["exclusiveMaximum"]},{minimum:["exclusiveMinimum"]},"multipleOf","format"]},{type:"string",rules:["maxLength","minLength","pattern","format"]},{type:"array",rules:["maxItems","minItems","items","contains","uniqueItems"]},{type:"object",rules:["maxProperties","minProperties","required","dependencies","propertyNames",{properties:["additionalProperties","patternProperties"]}]},{rules:["$ref","const","enum","not","anyOf","oneOf","allOf","if"]}],f=["type","$comment"],K=["$schema","$id","id","$data","$async","title","description","default","definitions","examples","readOnly","writeOnly","contentMediaType","contentEncoding","additionalItems","then","else"],$=["number","integer","string","array","object","boolean","null"];return q.all=GP(f),q.types=GP($),q.forEach(function(P){if(P.rules=P.rules.map(function(j){var v;if(typeof j=="object"){var w=Object.keys(j)[0];v=j[w],j=w,v.forEach(function(T){f.push(T),q.all[T]=!0})}f.push(j);var O=q.all[j]={keyword:j,code:j9[j],implements:v};return O}),q.all.$comment={keyword:"$comment",code:j9.$comment},P.type)q.types[P.type]=P}),q.keywords=GP(f.concat(K)),q.custom={},q}});var T9=p((Xp,Y9)=>{var O9=["multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum","maxLength","minLength","pattern","additionalItems","maxItems","minItems","uniqueItems","maxProperties","minProperties","required","additionalProperties","enum","format","const"];Y9.exports=function(_,q){for(var f=0;f<q.length;f++){_=JSON.parse(JSON.stringify(_));var K=q[f].split("/"),$=_,P;for(P=1;P<K.length;P++)$=$[K[P]];for(P=0;P<O9.length;P++){var j=O9[P],v=$[j];if(v)$[j]={anyOf:[v,{$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"}]}}}return _}});var H9=p((Ap,W9)=>{var yz=z$().MissingRef;W9.exports=z9;function z9(_,q,f){var K=this;if(typeof this._opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");if(typeof q=="function")f=q,q=void 0;var $=P(_).then(function(){var v=K._addSchema(_,void 0,q);return v.validate||j(v)});if(f)$.then(function(v){f(null,v)},f);return $;function P(v){var w=v.$schema;return w&&!K.getSchema(w)?z9.call(K,{$ref:w},!0):Promise.resolve()}function j(v){try{return K._compile(v)}catch(O){if(O instanceof yz)return w(O);throw O}function w(O){var T=O.missingSchema;if(H(T))throw new Error("Schema "+T+" is loaded but "+O.missingRef+" cannot be resolved");var Y=K._loadingSchemas[T];if(!Y)Y=K._loadingSchemas[T]=K._opts.loadSchema(T),Y.then(z,z);return Y.then(function(h){if(!H(T))return P(h).then(function(){if(!H(T))K.addSchema(h,T,void 0,q)})}).then(function(){return j(v)});function z(){delete K._loadingSchemas[T]}function H(h){return K._refs[h]||K._schemas[h]}}}}});var J9=p((up,h9)=>{h9.exports=function _(q,f,K){var $=" ",P=q.level,j=q.dataLevel,v=q.schema[f],w=q.schemaPath+q.util.getProperty(f),O=q.errSchemaPath+"/"+f,T=!q.opts.allErrors,Y,z="data"+(j||""),H="valid"+P,h="errs__"+P,J=q.opts.$data&&v&&v.$data,k;if(J)$+=" var schema"+P+" = "+q.util.getData(v.$data,j,q.dataPathArr)+"; ",k="schema"+P;else k=v;var X=this,l="definition"+P,N=X.definition,n="",R,g,V,M,C;if(J&&N.$data){C="keywordValidate"+P;var a=N.validateSchema;$+=" var "+l+" = RULES.custom['"+f+"'].definition; var "+C+" = "+l+".validate;"}else{if(M=q.useCustomRule(X,v,q.schema,q),!M)return;k="validate.schema"+w,C=M.code,R=N.compile,g=N.inline,V=N.macro}var r=C+".errors",A="i"+P,u="ruleErr"+P,m=N.async;if(m&&!q.async)throw new Error("async keyword in sync schema");if(!(g||V))$+=""+r+" = null;";if($+="var "+h+" = errors;var "+H+";",J&&N.$data){if(n+="}",$+=" if ("+k+" === undefined) { "+H+" = true; } else { ",a)n+="}",$+=" "+H+" = "+l+".validateSchema("+k+"); if ("+H+") { "}if(g)if(N.statements)$+=" "+M.validate+" ";else $+=" "+H+" = "+M.validate+"; ";else if(V){var S=q.util.copy(q),n="";S.level++;var I="valid"+S.level;S.schema=M.validate,S.schemaPath="";var D=q.compositeRule;q.compositeRule=S.compositeRule=!0;var c=q.validate(S).replace(/validate\.schema/g,C);q.compositeRule=S.compositeRule=D,$+=" "+c}else{var e=e||[];if(e.push($),$="",$+=" "+C+".call( ",q.opts.passContext)$+="this";else $+="self";if(R||N.schema===!1)$+=" , "+z+" ";else $+=" , "+k+" , "+z+" , validate.schema"+q.schemaPath+" ";if($+=" , (dataPath || '')",q.errorPath!='""')$+=" + "+q.errorPath;var L=j?"data"+(j-1||""):"parentData",Q=j?q.dataPathArr[j]:"parentDataProperty";$+=" , "+L+" , "+Q+" , rootData ) ";var Hq=$;if($=e.pop(),N.errors===!1){if($+=" "+H+" = ",m)$+="await ";$+=""+Hq+"; "}else if(m)r="customErrors"+P,$+=" var "+r+" = null; try { "+H+" = await "+Hq+"; } catch (e) { "+H+" = false; if (e instanceof ValidationError) "+r+" = e.errors; else throw e; } ";else $+=" "+r+" = null; "+H+" = "+Hq+"; "}if(N.modifying)$+=" if ("+L+") "+z+" = "+L+"["+Q+"];";if($+=""+n,N.valid){if(T)$+=" if (true) { "}else{if($+=" if ( ",N.valid===void 0)if($+=" !",V)$+=""+I;else $+=""+H;else $+=" "+!N.valid+" ";$+=") { ",Y=X.keyword;var e=e||[];e.push($),$="";var e=e||[];if(e.push($),$="",q.createErrors!==!1){if($+=" { keyword: '"+(Y||"custom")+"' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { keyword: '"+X.keyword+"' } ",q.opts.messages!==!1)$+=` , message: 'should pass "`+X.keyword+`" keyword validation' `;if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+z+" ";$+=" } "}else $+=" {} ";var Pq=$;if($=e.pop(),!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(["+Pq+"]); ";else $+=" validate.errors = ["+Pq+"]; return false; ";else $+=" var err = "+Pq+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";var _q=$;if($=e.pop(),g)if(N.errors){if(N.errors!="full"){if($+=" for (var "+A+"="+h+"; "+A+"<errors; "+A+"++) { var "+u+" = vErrors["+A+"]; if ("+u+".dataPath === undefined) "+u+".dataPath = (dataPath || '') + "+q.errorPath+"; if ("+u+".schemaPath === undefined) { "+u+'.schemaPath = "'+O+'"; } ',q.opts.verbose)$+=" "+u+".schema = "+k+"; "+u+".data = "+z+"; ";$+=" } "}}else if(N.errors===!1)$+=" "+_q+" ";else{if($+=" if ("+h+" == errors) { "+_q+" } else { for (var "+A+"="+h+"; "+A+"<errors; "+A+"++) { var "+u+" = vErrors["+A+"]; if ("+u+".dataPath === undefined) "+u+".dataPath = (dataPath || '') + "+q.errorPath+"; if ("+u+".schemaPath === undefined) { "+u+'.schemaPath = "'+O+'"; } ',q.opts.verbose)$+=" "+u+".schema = "+k+"; "+u+".data = "+z+"; ";$+=" } } "}else if(V){if($+=" var err = ",q.createErrors!==!1){if($+=" { keyword: '"+(Y||"custom")+"' , dataPath: (dataPath || '') + "+q.errorPath+" , schemaPath: "+q.util.toQuotedString(O)+" , params: { keyword: '"+X.keyword+"' } ",q.opts.messages!==!1)$+=` , message: 'should pass "`+X.keyword+`" keyword validation' `;if(q.opts.verbose)$+=" , schema: validate.schema"+w+" , parentSchema: validate.schema"+q.schemaPath+" , data: "+z+" ";$+=" } "}else $+=" {} ";if($+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!q.compositeRule&&T)if(q.async)$+=" throw new ValidationError(vErrors); ";else $+=" validate.errors = vErrors; return false; "}else if(N.errors===!1)$+=" "+_q+" ";else{if($+=" if (Array.isArray("+r+")) { if (vErrors === null) vErrors = "+r+"; else vErrors = vErrors.concat("+r+"); errors = vErrors.length; for (var "+A+"="+h+"; "+A+"<errors; "+A+"++) { var "+u+" = vErrors["+A+"]; if ("+u+".dataPath === undefined) "+u+".dataPath = (dataPath || '') + "+q.errorPath+"; "+u+'.schemaPath = "'+O+'"; ',q.opts.verbose)$+=" "+u+".schema = "+k+"; "+u+".data = "+z+"; ";$+=" } } else { "+_q+" } "}if($+=" } ",T)$+=" else { "}return $}});var mP=p((Gp,iz)=>{iz.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var X9=p((mp,Z9)=>{var k9=mP();Z9.exports={$id:"https://github.com/ajv-validator/ajv/blob/master/lib/definition_schema.js",definitions:{simpleTypes:k9.definitions.simpleTypes},type:"object",dependencies:{schema:["validate"],$data:["validate"],statements:["inline"],valid:{not:{required:["macro"]}}},properties:{type:k9.properties.type,schema:{type:"boolean"},statements:{type:"boolean"},dependencies:{type:"array",items:{type:"string"}},metaSchema:{type:"object"},modifying:{type:"boolean"},valid:{type:"boolean"},$data:{type:"boolean"},async:{type:"boolean"},errors:{anyOf:[{type:"boolean"},{const:"full"}]}}}});var u9=p((rp,A9)=>{var oz=/^[a-z_$][a-z0-9_$-]*$/i,cz=J9(),Lz=X9();A9.exports={add:tz,get:ez,remove:xz,validate:rP};function tz(_,q){var f=this.RULES;if(f.keywords[_])throw new Error("Keyword "+_+" is already defined");if(!oz.test(_))throw new Error("Keyword "+_+" is not a valid identifier");if(q){this.validateKeyword(q,!0);var K=q.type;if(Array.isArray(K))for(var $=0;$<K.length;$++)j(_,K[$],q);else j(_,K,q);var P=q.metaSchema;if(P){if(q.$data&&this._opts.$data)P={anyOf:[P,{$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"}]};q.validateSchema=this.compile(P,!0)}}f.keywords[_]=f.all[_]=!0;function j(v,w,O){var T;for(var Y=0;Y<f.length;Y++){var z=f[Y];if(z.type==w){T=z;break}}if(!T)T={type:w,rules:[]},f.push(T);var H={keyword:v,definition:O,custom:!0,code:cz,implements:O.implements};T.rules.push(H),f.custom[v]=H}return this}function ez(_){var q=this.RULES.custom[_];return q?q.definition:this.RULES.keywords[_]||!1}function xz(_){var q=this.RULES;delete q.keywords[_],delete q.all[_],delete q.custom[_];for(var f=0;f<q.length;f++){var K=q[f].rules;for(var $=0;$<K.length;$++)if(K[$].keyword==_){K.splice($,1);break}}return this}function rP(_,q){rP.errors=null;var f=this._validateKeyword=this._validateKeyword||this.compile(Lz,!0);if(f(_))return!0;if(rP.errors=f.errors,q)throw new Error("custom keyword definition is invalid: "+this.errorsText(f.errors));else return!1}});var G9=p((bp,sz)=>{sz.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON Schema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var l9=p((Vp,p9)=>{var r9=_j(),V8=T$(),Bz=$j(),b9=OP(),Uz=hP(),Fz=hj(),Qz=w9(),V9=T9(),M9=b8();p9.exports=Mq;Mq.prototype.validate=_W;Mq.prototype.compile=fW;Mq.prototype.addSchema=$W;Mq.prototype.addMetaSchema=KW;Mq.prototype.validateSchema=PW;Mq.prototype.getSchema=vW;Mq.prototype.removeSchema=OW;Mq.prototype.addFormat=kW;Mq.prototype.errorsText=JW;Mq.prototype._addSchema=YW;Mq.prototype._compile=TW;Mq.prototype.compileAsync=H9();var A$=u9();Mq.prototype.addKeyword=A$.add;Mq.prototype.getKeyword=A$.get;Mq.prototype.removeKeyword=A$.remove;Mq.prototype.validateKeyword=A$.validate;var S9=z$();Mq.ValidationError=S9.Validation;Mq.MissingRefError=S9.MissingRef;Mq.$dataMetaSchema=V9;var X$="http://json-schema.org/draft-07/schema",m9=["removeAdditional","useDefaults","coerceTypes","strictDefaults"],qW=["/properties"];function Mq(_){if(!(this instanceof Mq))return new Mq(_);if(_=this._opts=M9.copy(_)||{},mW(this),this._schemas={},this._refs={},this._fragments={},this._formats=Fz(_.format),this._cache=_.cache||new Bz,this._loadingSchemas={},this._compilations=[],this.RULES=Qz(),this._getId=zW(_),_.loopRequired=_.loopRequired||1/0,_.errorDataPath=="property")_._errorDataPathProperty=!0;if(_.serialize===void 0)_.serialize=Uz;if(this._metaOpts=GW(this),_.formats)AW(this);if(_.keywords)uW(this);if(ZW(this),typeof _.meta=="object")this.addMetaSchema(_.meta);if(_.nullable)this.addKeyword("nullable",{metaSchema:{type:"boolean"}});XW(this)}function _W(_,q){var f;if(typeof _=="string"){if(f=this.getSchema(_),!f)throw new Error('no schema with key or ref "'+_+'"')}else{var K=this._addSchema(_);f=K.validate||this._compile(K)}var $=f(q);if(f.$async!==!0)this.errors=f.errors;return $}function fW(_,q){var f=this._addSchema(_,void 0,q);return f.validate||this._compile(f)}function $W(_,q,f,K){if(Array.isArray(_)){for(var $=0;$<_.length;$++)this.addSchema(_[$],void 0,f,K);return this}var P=this._getId(_);if(P!==void 0&&typeof P!="string")throw new Error("schema id must be string");return q=V8.normalizeId(q||P),C9(this,q),this._schemas[q]=this._addSchema(_,f,K,!0),this}function KW(_,q,f){return this.addSchema(_,q,f,!0),this}function PW(_,q){var f=_.$schema;if(f!==void 0&&typeof f!="string")throw new Error("$schema must be a string");if(f=f||this._opts.defaultMeta||jW(this),!f)return this.logger.warn("meta-schema not available"),this.errors=null,!0;var K=this.validate(f,_);if(!K&&q){var $="schema is invalid: "+this.errorsText();if(this._opts.validateSchema=="log")this.logger.error($);else throw new Error($)}return K}function jW(_){var q=_._opts.meta;return _._opts.defaultMeta=typeof q=="object"?_._getId(q)||q:_.getSchema(X$)?X$:void 0,_._opts.defaultMeta}function vW(_){var q=N9(this,_);switch(typeof q){case"object":return q.validate||this._compile(q);case"string":return this.getSchema(q);case"undefined":return wW(this,_)}}function wW(_,q){var f=V8.schema.call(_,{schema:{}},q);if(f){var{schema:K,root:$,baseId:P}=f,j=r9.call(_,K,$,void 0,P);return _._fragments[q]=new b9({ref:q,fragment:!0,schema:K,root:$,baseId:P,validate:j}),j}}function N9(_,q){return q=V8.normalizeId(q),_._schemas[q]||_._refs[q]||_._fragments[q]}function OW(_){if(_ instanceof RegExp)return Z$(this,this._schemas,_),Z$(this,this._refs,_),this;switch(typeof _){case"undefined":return Z$(this,this._schemas),Z$(this,this._refs),this._cache.clear(),this;case"string":var q=N9(this,_);if(q)this._cache.del(q.cacheKey);return delete this._schemas[_],delete this._refs[_],this;case"object":var f=this._opts.serialize,K=f?f(_):_;this._cache.del(K);var $=this._getId(_);if($)$=V8.normalizeId($),delete this._schemas[$],delete this._refs[$]}return this}function Z$(_,q,f){for(var K in q){var $=q[K];if(!$.meta&&(!f||f.test(K)))_._cache.del($.cacheKey),delete q[K]}}function YW(_,q,f,K){if(typeof _!="object"&&typeof _!="boolean")throw new Error("schema should be object or boolean");var $=this._opts.serialize,P=$?$(_):_,j=this._cache.get(P);if(j)return j;K=K||this._opts.addUsedSchema!==!1;var v=V8.normalizeId(this._getId(_));if(v&&K)C9(this,v);var w=this._opts.validateSchema!==!1&&!q,O;if(w&&!(O=v&&v==V8.normalizeId(_.$schema)))this.validateSchema(_,!0);var T=V8.ids.call(this,_),Y=new b9({id:v,schema:_,localRefs:T,cacheKey:P,meta:f});if(v[0]!="#"&&K)this._refs[v]=Y;if(this._cache.put(P,Y),w&&O)this.validateSchema(_,!0);return Y}function TW(_,q){if(_.compiling){if(_.validate=$,$.schema=_.schema,$.errors=null,$.root=q?q:$,_.schema.$async===!0)$.$async=!0;return $}_.compiling=!0;var f;if(_.meta)f=this._opts,this._opts=this._metaOpts;var K;try{K=r9.call(this,_.schema,q,_.localRefs)}catch(P){throw delete _.validate,P}finally{if(_.compiling=!1,_.meta)this._opts=f}return _.validate=K,_.refs=K.refs,_.refVal=K.refVal,_.root=K.root,K;function $(){var P=_.validate,j=P.apply(this,arguments);return $.errors=P.errors,j}}function zW(_){switch(_.schemaId){case"auto":return hW;case"id":return WW;default:return HW}}function WW(_){if(_.$id)this.logger.warn("schema $id ignored",_.$id);return _.id}function HW(_){if(_.id)this.logger.warn("schema id ignored",_.id);return _.$id}function hW(_){if(_.$id&&_.id&&_.$id!=_.id)throw new Error("schema $id is different from id");return _.$id||_.id}function JW(_,q){if(_=_||this.errors,!_)return"No errors";q=q||{};var f=q.separator===void 0?", ":q.separator,K=q.dataVar===void 0?"data":q.dataVar,$="";for(var P=0;P<_.length;P++){var j=_[P];if(j)$+=K+j.dataPath+" "+j.message+f}return $.slice(0,-f.length)}function kW(_,q){if(typeof q=="string")q=new RegExp(q);return this._formats[_]=q,this}function ZW(_){var q;if(_._opts.$data)q=G9(),_.addMetaSchema(q,q.$id,!0);if(_._opts.meta===!1)return;var f=mP();if(_._opts.$data)f=V9(f,qW);_.addMetaSchema(f,X$,!0),_._refs["http://json-schema.org/schema"]=X$}function XW(_){var q=_._opts.schemas;if(!q)return;if(Array.isArray(q))_.addSchema(q);else for(var f in q)_.addSchema(q[f],f)}function AW(_){for(var q in _._opts.formats){var f=_._opts.formats[q];_.addFormat(q,f)}}function uW(_){for(var q in _._opts.keywords){var f=_._opts.keywords[q];_.addKeyword(q,f)}}function C9(_,q){if(_._schemas[q]||_._refs[q])throw new Error('schema with key or id "'+q+'" already exists')}function GW(_){var q=M9.copy(_._opts);for(var f=0;f<m9.length;f++)delete q[m9[f]];return q}function mW(_){var q=_._opts.logger;if(q===!1)_.logger={log:bP,warn:bP,error:bP};else{if(q===void 0)q=console;if(!(typeof q=="object"&&q.log&&q.warn&&q.error))throw new Error("logger must implement log, warn and error methods");_.logger=q}}function bP(){}});var DW=(_)=>{let{idPattern:q,entityName:f}=_,K=(w)=>{return q.test(w)};return Object.freeze({isId:K,validateId:(w)=>{return K(w)},resolve:(w)=>{if(K(w))return{kind:"id",value:w};return{kind:"path",value:w}},getPattern:()=>{return q},getEntityName:()=>{return f}})},yW,vf;var gP=b_(()=>{yW=Object.freeze({create:DW}),vf=yW});var S$,N$,dP=(_)=>{if(S$.isId(_))return"project";if(N$.isId(_))return"shared";return},iW=(_)=>{return S$.isId(_)||N$.isId(_)},kv=(_)=>{return _==="project"?S$:N$},oW=(_,q)=>{return kv(q).validateId(_)},cW,sq;var wf=b_(()=>{gP();S$=vf.create({idPattern:/^doc\d{3,}$/,entityName:"project-doc"}),N$=vf.create({idPattern:/^sdoc\d{3,}$/,entityName:"shared-doc"}),cW=Object.freeze({project:S$,shared:N$,detectScopeFromId:dP,isdocId:iW,getResolverForScope:kv,validateIdForScope:oW}),sq=cW});import{resolve as lv,relative as Rv,normalize as kH,isAbsolute as Ev}from"path";import{realpath as nv,lstat as ZH}from"fs/promises";var Z_=(_,q,f)=>{let K=new Error(q);return K.name=_,K.code=_,K.details=f,K},gv=(_)=>{if(!_)throw Z_("VALIDATION_ERROR","Empty path");if(Ev(_))throw Z_("VALIDATION_ERROR","Absolute path not allowed",{path:_});let q=kH(_).replaceAll("\\","/");if(q.split("/").some((K)=>K===".."))throw Z_("BOUNDARY_VIOLATION","Path contains ..",{path:_});return q},aP=(_,q)=>{let f=Rv(_,q);return f!==""&&!f.startsWith("..")&&!Ev(f)},XH=async(_,q,f)=>{let K=gv(q),$=lv(_),P=lv($,K);if(f?.followSymlinks)try{P=await nv(P)}catch(v){if(v.code!=="ENOENT")throw v}else try{if((await ZH(P)).isSymbolicLink()){let w=await nv(P);if(!aP($,w))throw Z_("BOUNDARY_VIOLATION",`Symlink target escapes boundary: '${q}' \u2192 '${w}'`,{path:q,resolved:P,target:w})}}catch(v){if(v.code!=="ENOENT"&&v.code!=="BOUNDARY_VIOLATION")throw v;if(v.code==="BOUNDARY_VIOLATION")throw v}if(!aP($,P)&&P!==$)throw Z_("BOUNDARY_VIOLATION",`Path escapes boundary: '${q}' \u2192 '${P}'`,{path:q,resolved:P,boundary:$});let j=Rv($,P).replaceAll("\\","/");return{abs:P,rel:j}},AH=(_,q)=>{let f=_.code,K=q?.path?q.resolved?`'${q.path}' \u2192 '${q.resolved}'`:`'${q.path}'`:"";switch(f){case"ENOENT":return Z_("NOT_FOUND",`File or directory not found${K?`: ${K}`:""}`,{...q,originalCode:f});case"ENOTEMPTY":return Z_("DIRECTORY_NOT_EMPTY",`Directory not empty${K?`: ${K}`:""}`,{...q,originalCode:f});case"ENOTDIR":case"EISDIR":return Z_("VALIDATION_ERROR",`Invalid path type${K?`: ${K}`:""}`,{...q,originalCode:f,reason:f==="ENOTDIR"?"not a directory":"is a directory"});case"EACCES":case"EPERM":return Z_("FS_ERROR",`Permission denied${K?`: ${K}`:""}`,{...q,originalCode:f});case"EBUSY":return Z_("FS_ERROR",`Resource busy or locked${K?`: ${K}`:""}`,{...q,originalCode:f});default:if(q)_.context=q;return _}},uH,vq;var IP=b_(()=>{uH=Object.freeze({fsError:Z_,validateRelative:gv,insideBoundary:aP,resolveWithinBoundary:XH,mapOsError:AH}),vq=uH});import{readFile as GH,writeFile as mH,unlink as dv,stat as DP,rename as rH,access as bH,mkdir as VH}from"fs/promises";import{constants as MH}from"fs";import{resolve as SH,dirname as yP,isAbsolute as NH}from"path";var CH=(_)=>{let{boundaryDir:q}=_;if(!q)throw vq.fsError("VALIDATION_ERROR","boundaryDir is required (empty string)",{boundaryDir:q});if(!NH(q))throw vq.fsError("VALIDATION_ERROR",`boundaryDir must be an absolute path: '${q}'`,{boundaryDir:q});let f=SH(q),K=async(z)=>{let{abs:H}=await vq.resolveWithinBoundary(f,z);return H},$=async(z)=>{let H=await K(z);try{return await bH(H,MH.F_OK),!0}catch{return!1}},P=async(z)=>{let H=await K(z);try{return await DP(H)}catch(h){throw vq.mapOsError(h,{path:z,resolved:H,operation:"stat"})}},j=async(z)=>{let H=await K(z),h;try{h=await DP(H)}catch(J){throw vq.mapOsError(J,{path:z,resolved:H,operation:"stat"})}if(!h.isFile())throw vq.fsError("VALIDATION_ERROR","Target is not a regular file",{path:z,resolved:H});try{return await GH(H,"utf-8")}catch(J){throw vq.mapOsError(J,{path:z,resolved:H,operation:"readFile"})}},v=async(z,H)=>{let h=await K(z),J;try{J=await DP(h)}catch(X){if(X.code==="ENOENT")J=null;else throw vq.mapOsError(X,{path:z,resolved:h,operation:"stat"})}if(J&&!J.isFile())throw vq.fsError("VALIDATION_ERROR","Target path exists and is not a regular file",{path:z,resolved:h});try{await VH(yP(h),{recursive:!0})}catch(X){throw vq.mapOsError(X,{path:yP(z),resolved:yP(h),operation:"mkdir"})}let k=`${h}.${process.pid}.${Math.random().toString(36).slice(2)}.tmp`;try{await mH(k,H,{encoding:"utf-8",mode:384}),await rH(k,h)}catch(X){try{await dv(k)}catch{}throw vq.mapOsError(X,{path:z,resolved:h,operation:"writeText"})}},w=async(z)=>{let H=await K(z);try{return await dv(H),{deleted:!0}}catch(h){if(h.code==="ENOENT")return{deleted:!1};throw vq.mapOsError(h,{path:z,resolved:H,operation:"delete"})}},O=(z,H,h)=>{for(let X=0;X<H.length;X++){let{oldText:l}=H[X];if(l.length===0)throw vq.fsError("VALIDATION_ERROR",`Empty oldText in replacement at index ${X} would cause infinite loop`,{index:X})}let J=z,k=0;for(let{oldText:X,newText:l}of H)if(J.includes(X))J=J.replace(X,l),k++;if(h?.requireAll&&k!==H.length)throw vq.fsError("VALIDATION_ERROR",`Only ${k} of ${H.length} replacements were applied (requireAll=true)`,{applied:k,total:H.length});return{wouldContent:J,applied:k}};return Object.freeze({exists:$,stat:P,readText:j,resolveSafe:async(z)=>{return vq.resolveWithinBoundary(f,z)},writeText:v,delete:w,previewReplaceFirst:O,applyReplaceFirst:async(z,H,h)=>{let J=await j(z),{wouldContent:k,applied:X}=O(J,H,h);if(X===0)return{applied:0};return await v(z,k),{applied:X}}})},pH,Uf;var av=b_(()=>{IP();pH=Object.freeze({create:CH}),Uf=pH});import{mkdir as lH,rm as nH,rmdir as RH,stat as Iv,readdir as EH}from"fs/promises";import{resolve as Dv,dirname as gH,isAbsolute as yv}from"path";var dH=(_)=>{let{boundaryDir:q}=_;if(!q)throw vq.fsError("VALIDATION_ERROR","boundaryDir is required (empty string)",{boundaryDir:q});if(!yv(q))throw vq.fsError("VALIDATION_ERROR",`boundaryDir must be an absolute path: '${q}'`,{boundaryDir:q});let f=Dv(q),K=(T)=>{let Y=T.toLowerCase().replace(/[^a-z0-9-_]/g,"-").replace(/-+/g,"-").replace(/^-|-$/g,"");if(!Y)throw vq.fsError("VALIDATION_ERROR",`normalizeName produced empty result from input: '${T}'`,{name:T,normalized:Y});return Y},$=async(T,Y)=>{return await vq.resolveWithinBoundary(f,T,Y)};return Object.freeze({normalizeName:K,resolve:$,isInsideBoundary:(T)=>{if(!yv(T))throw vq.fsError("VALIDATION_ERROR",`targetAbs must be an absolute path: '${T}'`,{targetAbs:T});let Y=Dv(T);return vq.insideBoundary(f,Y)},ensureDir:async(T)=>{let{abs:Y}=await $(T);try{await lH(Y,{recursive:!0})}catch(z){throw vq.mapOsError(z,{path:T,resolved:Y,operation:"ensureDir"})}},parentDir:(T)=>{let Y=vq.validateRelative(T),z=gH(Y);return z==="."?z:z.replaceAll("\\","/")},stat:async(T)=>{let{abs:Y}=await $(T);try{return await Iv(Y)}catch(z){throw vq.mapOsError(z,{path:T,resolved:Y,operation:"stat"})}},deleteDir:async(T,Y)=>{if(Y?.requireEmpty&&Y?.recursive)throw vq.fsError("VALIDATION_ERROR","requireEmpty and recursive are mutually exclusive",{path:T});let{abs:z}=await $(T);if(z===f)throw vq.fsError("VALIDATION_ERROR",`Cannot delete boundary root: '${T}' \u2192 '${z}'`,{path:T,resolved:z,boundary:f});let H;try{H=await Iv(z)}catch(h){if(h.code==="ENOENT")return{deleted:!1,reason:"NOT_FOUND"};throw vq.mapOsError(h,{path:T,resolved:z,operation:"stat"})}if(!H.isDirectory())return{deleted:!1,reason:"NOT_DIR"};if(Y?.requireEmpty){let h;try{h=await EH(z)}catch(J){throw vq.mapOsError(J,{path:T,resolved:z,operation:"readdir"})}if(h.length>0)throw vq.fsError("DIRECTORY_NOT_EMPTY",`Directory not empty: '${T}' \u2192 '${z}'`,{path:T,resolved:z});try{return await RH(z),{deleted:!0}}catch(J){if(J.code==="ENOENT")return{deleted:!1,reason:"NOT_FOUND"};if(J.code==="ENOTEMPTY")throw vq.fsError("DIRECTORY_NOT_EMPTY",`Directory not empty (race condition): '${T}' \u2192 '${z}'`,{path:T,resolved:z});throw vq.mapOsError(J,{path:T,resolved:z,operation:"rmdir"})}}try{return await nH(z,{recursive:Y?.recursive??!1}),{deleted:!0}}catch(h){if(h.code==="ENOENT")return{deleted:!1,reason:"NOT_FOUND"};if(h.code==="ENOTEMPTY"||h.code==="EISDIR"||h.code==="EACCES")throw vq.fsError("DIRECTORY_NOT_EMPTY",`Directory not empty: '${T}' \u2192 '${z}'`,{path:T,resolved:z,originalCode:h.code});throw vq.mapOsError(h,{path:T,resolved:z,operation:"deleteDir"})}}})},aH,Ff;var iv=b_(()=>{IP();aH=Object.freeze({create:dH}),Ff=aH});import{dirname as IH}from"path";var ov="---",Rq=(_,q,f)=>{let K=new Error(q);if(K.code=_,f!==void 0)K.data=f;throw K},DH=(_)=>{let{fileServiceByScope:q,folderServiceByScope:f,indexFilename:K}=_,$=(V)=>{if(V==="project")return q.project;if(V==="shared")return q.shared;return Rq("INVALID_SCOPE",`Unknown scope '${V}'`,{scope:V})},P=(V)=>{if(V==="project")return f.project;if(V==="shared")return f.shared;return Rq("INVALID_SCOPE",`Unknown scope '${V}'`,{scope:V})},j=async(V)=>{if(V.scope)return{scope:V.scope};if(V.kind==="id"){let C=dP(V.id);if(!C)Rq("INVALID_ID_FORMAT",`Invalid doc ID format: '${V.id}'. Expected docNNN or sdocNNN`,{id:V.id});return{scope:C}}if(V.kind==="path"){try{if((await w("project")).pathToId[V.path])return{scope:"project"}}catch{}try{if((await w("shared")).pathToId[V.path])return{scope:"shared",fallback:!0}}catch{}return{scope:"project"}}let M=V;return Rq("VALIDATION_ERROR",`Unknown address kind: ${JSON.stringify(M)}`)},v=(V)=>{return K},w=async(V)=>{let M=v(V),C=$(V);try{let a=await C.readText(M),r=JSON.parse(a);if(!r.id&&!r.pathToId){let u={id:{},pathToId:{}};for(let[m,S]of Object.entries(r))u.id[m]={path:S},u.pathToId[S]=m;return await O(V,u),u}return r}catch(a){if(a.code==="NOT_FOUND")return{id:{},pathToId:{}};throw a}},O=async(V,M)=>{let C=v(V),a=$(V),r=JSON.stringify(M,null,2);await a.writeText(C,r)},T=(V)=>{let M=V.split(`
3
3
  `);if(M.length<3||M[0].trim()!==ov)return{bodyContent:V};let C=-1;for(let S=1;S<M.length;S++)if(M[S].trim()===ov){C=S;break}if(C===-1)return{bodyContent:V};let a=M.slice(1,C),r=M.slice(0,C+1).join(`
4
4
  `),A=M.slice(C+1).join(`
@@ -175,7 +175,7 @@ Error: ${K}`)}},gN=()=>{let _;try{_=HO.findProjectRoot()}catch{_=kO(process.cwd(
175
175
  `:`[${K[w]}\r
176
176
  ]`;continue}if($+=K[w],K[w]==="\\")P=!0;else if(j&&K[w]==="]")j=!1;else if(!j&&K[w]==="[")j=!0}try{new RegExp($)}catch{return console.warn(`Could not convert regex pattern at ${q.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),_.source}return $}function r$(_,q){if(q.target==="openAi")console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead.");if(q.target==="openApi3"&&_.keyType?._def.typeName===i.ZodEnum)return{type:"object",required:_.keyType._def.values,properties:_.keyType._def.values.reduce((K,$)=>({...K,[$]:F(_.valueType._def,{...q,currentPath:[...q.currentPath,"properties",$]})??Gq(q)}),{}),additionalProperties:q.rejectedAdditionalProperties};let f={type:"object",additionalProperties:F(_.valueType._def,{...q,currentPath:[...q.currentPath,"additionalProperties"]})??q.allowedAdditionalProperties};if(q.target==="openApi3")return f;if(_.keyType?._def.typeName===i.ZodString&&_.keyType._def.checks?.length){let{type:K,...$}=m$(_.keyType._def,q);return{...f,propertyNames:$}}else if(_.keyType?._def.typeName===i.ZodEnum)return{...f,propertyNames:{enum:_.keyType._def.values}};else if(_.keyType?._def.typeName===i.ZodBranded&&_.keyType._def.type._def.typeName===i.ZodString&&_.keyType._def.type._def.checks?.length){let{type:K,...$}=G$(_.keyType._def,q);return{...f,propertyNames:$}}return f}function x9(_,q){if(q.mapStrategy==="record")return r$(_,q);let f=F(_.keyType._def,{...q,currentPath:[...q.currentPath,"items","items","0"]})||Gq(q),K=F(_.valueType._def,{...q,currentPath:[...q.currentPath,"items","items","1"]})||Gq(q);return{type:"array",maxItems:125,items:{type:"array",items:[f,K],minItems:2,maxItems:2}}}function s9(_){let q=_.values,K=Object.keys(_.values).filter((P)=>{return typeof q[q[P]]!=="number"}).map((P)=>q[P]),$=Array.from(new Set(K.map((P)=>typeof P)));return{type:$.length===1?$[0]==="string"?"string":"number":["string","number"],enum:K}}function B9(_){return _.target==="openAi"?void 0:{not:Gq({..._,currentPath:[..._.currentPath,"not"]})}}function U9(_){return _.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var sf={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Q9(_,q){if(q.target==="openApi3")return F9(_,q);let f=_.options instanceof Map?Array.from(_.options.values()):_.options;if(f.every((K)=>(K._def.typeName in sf)&&(!K._def.checks||!K._def.checks.length))){let K=f.reduce(($,P)=>{let j=sf[P._def.typeName];return j&&!$.includes(j)?[...$,j]:$},[]);return{type:K.length>1?K:K[0]}}else if(f.every((K)=>K._def.typeName==="ZodLiteral"&&!K.description)){let K=f.reduce(($,P)=>{let j=typeof P._def.value;switch(j){case"string":case"number":case"boolean":return[...$,j];case"bigint":return[...$,"integer"];case"object":if(P._def.value===null)return[...$,"null"];case"symbol":case"undefined":case"function":default:return $}},[]);if(K.length===f.length){let $=K.filter((P,j,v)=>v.indexOf(P)===j);return{type:$.length>1?$:$[0],enum:f.reduce((P,j)=>{return P.includes(j._def.value)?P:[...P,j._def.value]},[])}}}else if(f.every((K)=>K._def.typeName==="ZodEnum"))return{type:"string",enum:f.reduce((K,$)=>[...K,...$._def.values.filter((P)=>!K.includes(P))],[])};return F9(_,q)}var F9=(_,q)=>{let f=(_.options instanceof Map?Array.from(_.options.values()):_.options).map((K,$)=>F(K._def,{...q,currentPath:[...q.currentPath,"anyOf",`${$}`]})).filter((K)=>!!K&&(!q.strictUnions||typeof K==="object"&&Object.keys(K).length>0));return f.length?{anyOf:f}:void 0};function qv(_,q){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(_.innerType._def.typeName)&&(!_.innerType._def.checks||!_.innerType._def.checks.length)){if(q.target==="openApi3")return{type:sf[_.innerType._def.typeName],nullable:!0};return{type:[sf[_.innerType._def.typeName],"null"]}}if(q.target==="openApi3"){let K=F(_.innerType._def,{...q,currentPath:[...q.currentPath]});if(K&&"$ref"in K)return{allOf:[K],nullable:!0};return K&&{...K,nullable:!0}}let f=F(_.innerType._def,{...q,currentPath:[...q.currentPath,"anyOf","0"]});return f&&{anyOf:[f,{type:"null"}]}}function _v(_,q){let f={type:"number"};if(!_.checks)return f;for(let K of _.checks)switch(K.kind){case"int":f.type="integer",MP(f,"type",K.message,q);break;case"min":if(q.target==="jsonSchema7")if(K.inclusive)jq(f,"minimum",K.value,K.message,q);else jq(f,"exclusiveMinimum",K.value,K.message,q);else{if(!K.inclusive)f.exclusiveMinimum=!0;jq(f,"minimum",K.value,K.message,q)}break;case"max":if(q.target==="jsonSchema7")if(K.inclusive)jq(f,"maximum",K.value,K.message,q);else jq(f,"exclusiveMaximum",K.value,K.message,q);else{if(!K.inclusive)f.exclusiveMaximum=!0;jq(f,"maximum",K.value,K.message,q)}break;case"multipleOf":jq(f,"multipleOf",K.value,K.message,q);break}return f}function fv(_,q){let f=q.target==="openAi",K={type:"object",properties:{}},$=[],P=_.shape();for(let v in P){let w=P[v];if(w===void 0||w._def===void 0)continue;let O=NW(w);if(O&&f){if(w._def.typeName==="ZodOptional")w=w._def.innerType;if(!w.isNullable())w=w.nullable();O=!1}let T=F(w._def,{...q,currentPath:[...q.currentPath,"properties",v],propertyPath:[...q.currentPath,"properties",v]});if(T===void 0)continue;if(K.properties[v]=T,!O)$.push(v)}if($.length)K.required=$;let j=SW(_,q);if(j!==void 0)K.additionalProperties=j;return K}function SW(_,q){if(_.catchall._def.typeName!=="ZodNever")return F(_.catchall._def,{...q,currentPath:[...q.currentPath,"additionalProperties"]});switch(_.unknownKeys){case"passthrough":return q.allowedAdditionalProperties;case"strict":return q.rejectedAdditionalProperties;case"strip":return q.removeAdditionalStrategy==="strict"?q.allowedAdditionalProperties:q.rejectedAdditionalProperties}}function NW(_){try{return _.isOptional()}catch{return!0}}var $v=(_,q)=>{if(q.currentPath.toString()===q.propertyPath?.toString())return F(_.innerType._def,q);let f=F(_.innerType._def,{...q,currentPath:[...q.currentPath,"anyOf","1"]});return f?{anyOf:[{not:Gq(q)},f]}:Gq(q)};var Kv=(_,q)=>{if(q.pipeStrategy==="input")return F(_.in._def,q);else if(q.pipeStrategy==="output")return F(_.out._def,q);let f=F(_.in._def,{...q,currentPath:[...q.currentPath,"allOf","0"]}),K=F(_.out._def,{...q,currentPath:[...q.currentPath,"allOf",f?"1":"0"]});return{allOf:[f,K].filter(($)=>$!==void 0)}};function Pv(_,q){return F(_.type._def,q)}function jv(_,q){let K={type:"array",uniqueItems:!0,items:F(_.valueType._def,{...q,currentPath:[...q.currentPath,"items"]})};if(_.minSize)jq(K,"minItems",_.minSize.value,_.minSize.message,q);if(_.maxSize)jq(K,"maxItems",_.maxSize.value,_.maxSize.message,q);return K}function vv(_,q){if(_.rest)return{type:"array",minItems:_.items.length,items:_.items.map((f,K)=>F(f._def,{...q,currentPath:[...q.currentPath,"items",`${K}`]})).reduce((f,K)=>K===void 0?f:[...f,K],[]),additionalItems:F(_.rest._def,{...q,currentPath:[...q.currentPath,"additionalItems"]})};else return{type:"array",minItems:_.items.length,maxItems:_.items.length,items:_.items.map((f,K)=>F(f._def,{...q,currentPath:[...q.currentPath,"items",`${K}`]})).reduce((f,K)=>K===void 0?f:[...f,K],[])}}function wv(_){return{not:Gq(_)}}function Ov(_){return Gq(_)}var Yv=(_,q)=>{return F(_.innerType._def,q)};var Tv=(_,q,f)=>{switch(q){case i.ZodString:return m$(_,f);case i.ZodNumber:return _v(_,f);case i.ZodObject:return fv(_,f);case i.ZodBigInt:return I9(_,f);case i.ZodBoolean:return D9();case i.ZodDate:return SP(_,f);case i.ZodUndefined:return wv(f);case i.ZodNull:return U9(f);case i.ZodArray:return a9(_,f);case i.ZodUnion:case i.ZodDiscriminatedUnion:return Q9(_,f);case i.ZodIntersection:return L9(_,f);case i.ZodTuple:return vv(_,f);case i.ZodRecord:return r$(_,f);case i.ZodLiteral:return t9(_,f);case i.ZodEnum:return c9(_);case i.ZodNativeEnum:return s9(_);case i.ZodNullable:return qv(_,f);case i.ZodOptional:return $v(_,f);case i.ZodMap:return x9(_,f);case i.ZodSet:return jv(_,f);case i.ZodLazy:return()=>_.getter()._def;case i.ZodPromise:return Pv(_,f);case i.ZodNaN:case i.ZodNever:return B9(f);case i.ZodEffects:return o9(_,f);case i.ZodAny:return Gq(f);case i.ZodUnknown:return Ov(f);case i.ZodDefault:return i9(_,f);case i.ZodBranded:return G$(_,f);case i.ZodReadonly:return Yv(_,f);case i.ZodCatch:return y9(_,f);case i.ZodPipeline:return Kv(_,f);case i.ZodFunction:case i.ZodVoid:case i.ZodSymbol:return;default:return((K)=>{return})(q)}};function F(_,q,f=!1){let K=q.seen.get(_);if(q.override){let v=q.override?.(_,q,K,f);if(v!==E9)return v}if(K&&!f){let v=CW(K,q);if(v!==void 0)return v}let $={def:_,path:q.currentPath,jsonSchema:void 0};q.seen.set(_,$);let P=Tv(_,_.typeName,q),j=typeof P==="function"?F(P(),q):P;if(j)pW(_,q,j);if(q.postProcess){let v=q.postProcess(j,_,q);return $.jsonSchema=j,v}return $.jsonSchema=j,j}var CW=(_,q)=>{switch(q.$refStrategy){case"root":return{$ref:_.path.join("/")};case"relative":return{$ref:u$(q.currentPath,_.path)};case"none":case"seen":{if(_.path.length<q.currentPath.length&&_.path.every((f,K)=>q.currentPath[K]===f))return console.warn(`Recursive reference detected at ${q.currentPath.join("/")}! Defaulting to any`),Gq(q);return q.$refStrategy==="seen"?Gq(q):void 0}}},pW=(_,q,f)=>{if(_.description){if(f.description=_.description,q.markdownDescription)f.markdownDescription=_.description}return f};var b$=(_,q)=>{let f=d9(q),K=typeof q==="object"&&q.definitions?Object.entries(q.definitions).reduce((w,[O,T])=>({...w,[O]:F(T._def,{...f,currentPath:[...f.basePath,f.definitionPath,O]},!0)??Gq(f)}),{}):void 0,$=typeof q==="string"?q:q?.nameStrategy==="title"?void 0:q?.name,P=F(_._def,$===void 0?f:{...f,currentPath:[...f.basePath,f.definitionPath,$]},!1)??Gq(f),j=typeof q==="object"&&q.name!==void 0&&q.nameStrategy==="title"?q.name:void 0;if(j!==void 0)P.title=j;if(f.flags.hasReferencedOpenAiAnyType){if(!K)K={};if(!K[f.openAiAnyTypeName])K[f.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:f.$refStrategy==="relative"?"1":[...f.basePath,f.definitionPath,f.openAiAnyTypeName].join("/")}}}let v=$===void 0?K?{...P,[f.definitionPath]:K}:P:{$ref:[...f.$refStrategy==="relative"?[]:f.basePath,f.definitionPath,$].join("/"),[f.definitionPath]:{...K,[$]:P}};if(f.target==="jsonSchema7")v.$schema="http://json-schema.org/draft-07/schema#";else if(f.target==="jsonSchema2019-09"||f.target==="openAi")v.$schema="https://json-schema.org/draft/2019-09/schema#";if(f.target==="openAi"&&(("anyOf"in v)||("oneOf"in v)||("allOf"in v)||("type"in v)&&Array.isArray(v.type)))console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property.");return v};var pP;(function(_){_.Completable="McpCompletable"})(pP||(pP={}));class Bf extends $q{_parse(_){let{ctx:q}=this._processInputParams(_),f=q.data;return this._def.type._parse({data:f,path:q.path,parent:q})}unwrap(){return this._def.type}}Bf.create=(_,q)=>{return new Bf({type:_,typeName:pP.Completable,complete:q.complete,...lW(q)})};function lW(_){if(!_)return{};let{errorMap:q,invalid_type_error:f,required_error:K,description:$}=_;if(q&&(f||K))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(q)return{errorMap:q,description:$};return{errorMap:(j,v)=>{var w,O;let{message:T}=_;if(j.code==="invalid_enum_value")return{message:T!==null&&T!==void 0?T:v.defaultError};if(typeof v.data==="undefined")return{message:(w=T!==null&&T!==void 0?T:K)!==null&&w!==void 0?w:v.defaultError};if(j.code!=="invalid_type")return{message:v.defaultError};return{message:(O=T!==null&&T!==void 0?T:f)!==null&&O!==void 0?O:v.defaultError}},description:$}}class lP{constructor(_,q){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new VP(_,q)}async connect(_){return await this.server.connect(_)}async close(){await this.server.close()}setToolRequestHandlers(){if(this._toolHandlersInitialized)return;this.server.assertCanSetRequestHandler(q$.shape.method.value),this.server.assertCanSetRequestHandler(_$.shape.method.value),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(q$,()=>({tools:Object.entries(this._registeredTools).filter(([,_])=>_.enabled).map(([_,q])=>{let f={name:_,title:q.title,description:q.description,inputSchema:q.inputSchema?b$(q.inputSchema,{strictUnions:!0}):nW,annotations:q.annotations,_meta:q._meta};if(q.outputSchema)f.outputSchema=b$(q.outputSchema,{strictUnions:!0});return f})})),this.server.setRequestHandler(_$,async(_,q)=>{let f=this._registeredTools[_.params.name];if(!f)throw new Xq(Zq.InvalidParams,`Tool ${_.params.name} not found`);if(!f.enabled)throw new Xq(Zq.InvalidParams,`Tool ${_.params.name} disabled`);let K;if(f.inputSchema){let $=await f.inputSchema.safeParseAsync(_.params.arguments);if(!$.success)throw new Xq(Zq.InvalidParams,`Invalid arguments for tool ${_.params.name}: ${$.error.message}`);let P=$.data,j=f.callback;try{K=await Promise.resolve(j(P,q))}catch(v){K={content:[{type:"text",text:v instanceof Error?v.message:String(v)}],isError:!0}}}else{let $=f.callback;try{K=await Promise.resolve($(q))}catch(P){K={content:[{type:"text",text:P instanceof Error?P.message:String(P)}],isError:!0}}}if(f.outputSchema&&!K.isError){if(!K.structuredContent)throw new Xq(Zq.InvalidParams,`Tool ${_.params.name} has an output schema but no structured content was provided`);let $=await f.outputSchema.safeParseAsync(K.structuredContent);if(!$.success)throw new Xq(Zq.InvalidParams,`Invalid structured content for tool ${_.params.name}: ${$.error.message}`)}return K}),this._toolHandlersInitialized=!0}setCompletionRequestHandler(){if(this._completionHandlerInitialized)return;this.server.assertCanSetRequestHandler(f$.shape.method.value),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(f$,async(_)=>{switch(_.params.ref.type){case"ref/prompt":return this.handlePromptCompletion(_,_.params.ref);case"ref/resource":return this.handleResourceCompletion(_,_.params.ref);default:throw new Xq(Zq.InvalidParams,`Invalid completion reference: ${_.params.ref}`)}}),this._completionHandlerInitialized=!0}async handlePromptCompletion(_,q){let f=this._registeredPrompts[q.name];if(!f)throw new Xq(Zq.InvalidParams,`Prompt ${q.name} not found`);if(!f.enabled)throw new Xq(Zq.InvalidParams,`Prompt ${q.name} disabled`);if(!f.argsSchema)return V$;let K=f.argsSchema.shape[_.params.argument.name];if(!(K instanceof Bf))return V$;let P=await K._def.complete(_.params.argument.value,_.params.context);return Wv(P)}async handleResourceCompletion(_,q){let f=Object.values(this._registeredResourceTemplates).find((P)=>P.resourceTemplate.uriTemplate.toString()===q.uri);if(!f){if(this._registeredResources[q.uri])return V$;throw new Xq(Zq.InvalidParams,`Resource template ${_.params.ref.uri} not found`)}let K=f.resourceTemplate.completeCallback(_.params.argument.name);if(!K)return V$;let $=await K(_.params.argument.value,_.params.context);return Wv($)}setResourceRequestHandlers(){if(this._resourceHandlersInitialized)return;this.server.assertCanSetRequestHandler(s6.shape.method.value),this.server.assertCanSetRequestHandler(B6.shape.method.value),this.server.assertCanSetRequestHandler(U6.shape.method.value),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(s6,async(_,q)=>{let f=Object.entries(this._registeredResources).filter(([$,P])=>P.enabled).map(([$,P])=>({uri:$,name:P.name,...P.metadata})),K=[];for(let $ of Object.values(this._registeredResourceTemplates)){if(!$.resourceTemplate.listCallback)continue;let P=await $.resourceTemplate.listCallback(q);for(let j of P.resources)K.push({...$.metadata,...j})}return{resources:[...f,...K]}}),this.server.setRequestHandler(B6,async()=>{return{resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([q,f])=>({name:q,uriTemplate:f.resourceTemplate.uriTemplate.toString(),...f.metadata}))}}),this.server.setRequestHandler(U6,async(_,q)=>{let f=new URL(_.params.uri),K=this._registeredResources[f.toString()];if(K){if(!K.enabled)throw new Xq(Zq.InvalidParams,`Resource ${f} disabled`);return K.readCallback(f,q)}for(let $ of Object.values(this._registeredResourceTemplates)){let P=$.resourceTemplate.uriTemplate.match(f.toString());if(P)return $.readCallback(f,P,q)}throw new Xq(Zq.InvalidParams,`Resource ${f} not found`)}),this.setCompletionRequestHandler(),this._resourceHandlersInitialized=!0}setPromptRequestHandlers(){if(this._promptHandlersInitialized)return;this.server.assertCanSetRequestHandler(F6.shape.method.value),this.server.assertCanSetRequestHandler(Q6.shape.method.value),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(F6,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,_])=>_.enabled).map(([_,q])=>{return{name:_,title:q.title,description:q.description,arguments:q.argsSchema?EW(q.argsSchema):void 0}})})),this.server.setRequestHandler(Q6,async(_,q)=>{let f=this._registeredPrompts[_.params.name];if(!f)throw new Xq(Zq.InvalidParams,`Prompt ${_.params.name} not found`);if(!f.enabled)throw new Xq(Zq.InvalidParams,`Prompt ${_.params.name} disabled`);if(f.argsSchema){let K=await f.argsSchema.safeParseAsync(_.params.arguments);if(!K.success)throw new Xq(Zq.InvalidParams,`Invalid arguments for prompt ${_.params.name}: ${K.error.message}`);let $=K.data,P=f.callback;return await Promise.resolve(P($,q))}else{let K=f.callback;return await Promise.resolve(K(q))}}),this.setCompletionRequestHandler(),this._promptHandlersInitialized=!0}resource(_,q,...f){let K;if(typeof f[0]==="object")K=f.shift();let $=f[0];if(typeof q==="string"){if(this._registeredResources[q])throw new Error(`Resource ${q} is already registered`);let P=this._createRegisteredResource(_,void 0,q,K,$);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),P}else{if(this._registeredResourceTemplates[_])throw new Error(`Resource template ${_} is already registered`);let P=this._createRegisteredResourceTemplate(_,void 0,q,K,$);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),P}}registerResource(_,q,f,K){if(typeof q==="string"){if(this._registeredResources[q])throw new Error(`Resource ${q} is already registered`);let $=this._createRegisteredResource(_,f.title,q,f,K);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),$}else{if(this._registeredResourceTemplates[_])throw new Error(`Resource template ${_} is already registered`);let $=this._createRegisteredResourceTemplate(_,f.title,q,f,K);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),$}}_createRegisteredResource(_,q,f,K,$){let P={name:_,title:q,metadata:K,readCallback:$,enabled:!0,disable:()=>P.update({enabled:!1}),enable:()=>P.update({enabled:!0}),remove:()=>P.update({uri:null}),update:(j)=>{if(typeof j.uri!=="undefined"&&j.uri!==f){if(delete this._registeredResources[f],j.uri)this._registeredResources[j.uri]=P}if(typeof j.name!=="undefined")P.name=j.name;if(typeof j.title!=="undefined")P.title=j.title;if(typeof j.metadata!=="undefined")P.metadata=j.metadata;if(typeof j.callback!=="undefined")P.readCallback=j.callback;if(typeof j.enabled!=="undefined")P.enabled=j.enabled;this.sendResourceListChanged()}};return this._registeredResources[f]=P,P}_createRegisteredResourceTemplate(_,q,f,K,$){let P={resourceTemplate:f,title:q,metadata:K,readCallback:$,enabled:!0,disable:()=>P.update({enabled:!1}),enable:()=>P.update({enabled:!0}),remove:()=>P.update({name:null}),update:(j)=>{if(typeof j.name!=="undefined"&&j.name!==_){if(delete this._registeredResourceTemplates[_],j.name)this._registeredResourceTemplates[j.name]=P}if(typeof j.title!=="undefined")P.title=j.title;if(typeof j.template!=="undefined")P.resourceTemplate=j.template;if(typeof j.metadata!=="undefined")P.metadata=j.metadata;if(typeof j.callback!=="undefined")P.readCallback=j.callback;if(typeof j.enabled!=="undefined")P.enabled=j.enabled;this.sendResourceListChanged()}};return this._registeredResourceTemplates[_]=P,P}_createRegisteredPrompt(_,q,f,K,$){let P={title:q,description:f,argsSchema:K===void 0?void 0:W.object(K),callback:$,enabled:!0,disable:()=>P.update({enabled:!1}),enable:()=>P.update({enabled:!0}),remove:()=>P.update({name:null}),update:(j)=>{if(typeof j.name!=="undefined"&&j.name!==_){if(delete this._registeredPrompts[_],j.name)this._registeredPrompts[j.name]=P}if(typeof j.title!=="undefined")P.title=j.title;if(typeof j.description!=="undefined")P.description=j.description;if(typeof j.argsSchema!=="undefined")P.argsSchema=W.object(j.argsSchema);if(typeof j.callback!=="undefined")P.callback=j.callback;if(typeof j.enabled!=="undefined")P.enabled=j.enabled;this.sendPromptListChanged()}};return this._registeredPrompts[_]=P,P}_createRegisteredTool(_,q,f,K,$,P,j,v){let w={title:q,description:f,inputSchema:K===void 0?void 0:W.object(K),outputSchema:$===void 0?void 0:W.object($),annotations:P,_meta:j,callback:v,enabled:!0,disable:()=>w.update({enabled:!1}),enable:()=>w.update({enabled:!0}),remove:()=>w.update({name:null}),update:(O)=>{if(typeof O.name!=="undefined"&&O.name!==_){if(delete this._registeredTools[_],O.name)this._registeredTools[O.name]=w}if(typeof O.title!=="undefined")w.title=O.title;if(typeof O.description!=="undefined")w.description=O.description;if(typeof O.paramsSchema!=="undefined")w.inputSchema=W.object(O.paramsSchema);if(typeof O.callback!=="undefined")w.callback=O.callback;if(typeof O.annotations!=="undefined")w.annotations=O.annotations;if(typeof O._meta!=="undefined")w._meta=O._meta;if(typeof O.enabled!=="undefined")w.enabled=O.enabled;this.sendToolListChanged()}};return this._registeredTools[_]=w,this.setToolRequestHandlers(),this.sendToolListChanged(),w}tool(_,...q){if(this._registeredTools[_])throw new Error(`Tool ${_} is already registered`);let f,K,$,P;if(typeof q[0]==="string")f=q.shift();if(q.length>1){let v=q[0];if(zv(v)){if(K=q.shift(),q.length>1&&typeof q[0]==="object"&&q[0]!==null&&!zv(q[0]))P=q.shift()}else if(typeof v==="object"&&v!==null)P=q.shift()}let j=q[0];return this._createRegisteredTool(_,void 0,f,K,$,P,void 0,j)}registerTool(_,q,f){if(this._registeredTools[_])throw new Error(`Tool ${_} is already registered`);let{title:K,description:$,inputSchema:P,outputSchema:j,annotations:v,_meta:w}=q;return this._createRegisteredTool(_,K,$,P,j,v,w,f)}prompt(_,...q){if(this._registeredPrompts[_])throw new Error(`Prompt ${_} is already registered`);let f;if(typeof q[0]==="string")f=q.shift();let K;if(q.length>1)K=q.shift();let $=q[0],P=this._createRegisteredPrompt(_,void 0,f,K,$);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),P}registerPrompt(_,q,f){if(this._registeredPrompts[_])throw new Error(`Prompt ${_} is already registered`);let{title:K,description:$,argsSchema:P}=q,j=this._createRegisteredPrompt(_,K,$,P,f);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),j}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(_,q){return this.server.sendLoggingMessage(_,q)}sendResourceListChanged(){if(this.isConnected())this.server.sendResourceListChanged()}sendToolListChanged(){if(this.isConnected())this.server.sendToolListChanged()}sendPromptListChanged(){if(this.isConnected())this.server.sendPromptListChanged()}}var nW={type:"object",properties:{}};function zv(_){if(typeof _!=="object"||_===null)return!1;return Object.keys(_).length===0||Object.values(_).some(RW)}function RW(_){return _!==null&&typeof _==="object"&&"parse"in _&&typeof _.parse==="function"&&"safeParse"in _&&typeof _.safeParse==="function"}function EW(_){return Object.entries(_.shape).map(([q,f])=>({name:q,description:f.description,required:!f.isOptional()}))}function Wv(_){return{completion:{values:_.slice(0,100),total:_.length,hasMore:_.length>100}}}var V$={completion:{values:[],hasMore:!1}};import hv from"process";class nP{append(_){this._buffer=this._buffer?Buffer.concat([this._buffer,_]):_}readMessage(){if(!this._buffer)return null;let _=this._buffer.indexOf(`
177
177
  `);if(_===-1)return null;let q=this._buffer.toString("utf8",0,_).replace(/\r$/,"");return this._buffer=this._buffer.subarray(_+1),gW(q)}clear(){this._buffer=void 0}}function gW(_){return m7.parse(JSON.parse(_))}function Hv(_){return JSON.stringify(_)+`
178
- `}class RP{constructor(_=hv.stdin,q=hv.stdout){this._stdin=_,this._stdout=q,this._readBuffer=new nP,this._started=!1,this._ondata=(f)=>{this._readBuffer.append(f),this.processReadBuffer()},this._onerror=(f)=>{var K;(K=this.onerror)===null||K===void 0||K.call(this,f)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){var _,q;while(!0)try{let f=this._readBuffer.readMessage();if(f===null)break;(_=this.onmessage)===null||_===void 0||_.call(this,f)}catch(f){(q=this.onerror)===null||q===void 0||q.call(this,f)}}async close(){var _;if(this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0)this._stdin.pause();this._readBuffer.clear(),(_=this.onclose)===null||_===void 0||_.call(this)}send(_){return new Promise((q)=>{let f=Hv(_);if(this._stdout.write(f))q();else this._stdout.once("drain",q)})}}var EP={name:"@kelceyp/swic",version:"0.2.8",description:"Story Workflow Inject Context - MCP server for managing stories, subtasks, and pipelines",type:"module",main:"dist/server/Server.js",bin:{"swic-mcp":"./dist/server/Server.js",swic:"./dist/cli/cli.js"},files:["dist/","README.md","LICENSE"],scripts:{"build-server":"bun run scripts/server/build-dist.ts","build-cli":"bun run scripts/cli/build-dist.ts",build:"bun run scripts/build-all.ts",prepublishOnly:"bun run build","test:e2e":"bash tests/e2e/run-e2e-tests.sh","test:e2e:build":"bash tests/e2e/build-test-image.sh","test:e2e:rebuild":"bash tests/e2e/build-test-image.sh && bash tests/e2e/run-e2e-tests.sh",lint:"eslint src scripts archive --ext .ts","lint:fix":"eslint src scripts archive --ext .ts --fix"},dependencies:{"@kelceyp/clibuilder":"^0.2.1","@modelcontextprotocol/sdk":"^1.0.0","@types/handlebars":"^4.0.40","@types/yaml":"^1.9.6",debug:"^4.4.3",handlebars:"^4.7.8",yaml:"^2.8.1"},devDependencies:{"@types/bun":"latest","@types/debug":"^4.1.12","@types/node":"^20.0.0","@typescript-eslint/eslint-plugin":"^8.46.2","@typescript-eslint/parser":"^8.46.2",esbuild:"^0.25.11",eslint:"8",typescript:"^5.0.0"},engines:{bun:">=1.0.0"},repository:{type:"git",url:"https://github.com/kelceyp/swic.git"},author:"Paul Kelcey",license:"MIT",keywords:["mcp","model-context-protocol","workflow","story-management","pipeline-orchestration","development-workflow","sdlc"]};var aW=(_)=>{let q={name:"doc_create",description:"Create a new doc with content. Returns the created doc ID.",inputSchema:{scope:W.enum(["project","shared"]).describe("Scope for the doc (project or shared)"),path:W.string().describe('Path for the doc (e.g., "auth/jwt-setup.md")'),content:W.string().describe("Content of the doc")}};return Object.freeze({definition:q,handler:async(K)=>{let{scope:$,path:P,content:j}=K,v=await _.DocService.create({address:{kind:"path",scope:$,path:P},content:j});return{content:[{type:"text",text:`Created doc: ${v.id} at ${v.path}`}]}}})},IW=Object.freeze({create:aW}),Jv=IW;var M$=(_)=>{let q;if(typeof _==="string")q=[_];else if(Array.isArray(_)){if(_.length===0)throw new Error("identifier array cannot be empty");q=_}else throw new Error("identifier must be a string or array of strings");for(let $ of q)if(typeof $!=="string"||$.trim().length===0)throw new Error("All identifiers must be non-empty strings");let f=q.map(($)=>$.trim()),K=[...new Set(f)];if(K.length===0)throw new Error("No valid identifiers provided");return K};wf();var LW=(_)=>{let q={name:"doc_delete",description:"Delete one or more docs. Idempotent - does not error if doc already deleted. Supports bulk operations by passing an array of identifiers.",inputSchema:{identifier:W.union([W.string().describe('Single doc ID (e.g., "doc001") or path (e.g., "auth/jwt-setup.md")'),W.array(W.string()).describe("Array of doc IDs or paths for bulk delete")]).describe("doc identifier(s) - ID or path, single or array"),scope:W.enum(["project","shared"]).optional().describe("Optional scope. Auto-resolves if omitted (checks project first, then shared, or infers from ID prefix)")}};return Object.freeze({definition:q,handler:async(K)=>{let{identifier:$,scope:P}=K,j=M$($),v=await Promise.all(j.map(async(z)=>{let h=sq.isdocId(z)?{kind:"id",scope:P,id:z}:{kind:"path",scope:P,path:z},J=await _.DocService.read(h);return{identifier:z,address:h,doc:J}})),w=[];for(let z of v){let H=await _.DocService.deleteLatest(z.address);w.push({id:z.doc.id,deleted:H.deleted})}let O=w.filter((z)=>z.deleted),T=w.length-O.length,Y={deleted:O.map((z)=>z.id),alreadyDeleted:w.filter((z)=>!z.deleted).map((z)=>z.id),message:`Deleted ${O.length} doc${O.length!==1?"s":""}`+(T>0?`, ${T} ${T!==1?"were":"was"} already deleted`:"")};return{content:[{type:"text",text:JSON.stringify(Y,null,2)}]}}})},tW=Object.freeze({create:LW}),Zv=tW;wf();var eW=(_)=>{let q={name:"doc_edit",description:"Edit doc content using text replacement operations. Uses last-write-wins semantics.",inputSchema:{identifier:W.string().describe('doc ID (e.g., "doc001") or path (e.g., "auth/jwt-setup.md")'),scope:W.enum(["project","shared"]).optional().describe("Optional scope. Auto-resolves if omitted (checks project first, then shared, or infers from ID prefix)"),operation:W.discriminatedUnion("type",[W.object({type:W.literal("replaceOnce"),oldText:W.string(),newText:W.string()}),W.object({type:W.literal("replaceAll"),oldText:W.string(),newText:W.string()}),W.object({type:W.literal("replaceRegex"),pattern:W.string(),flags:W.string().optional(),replacement:W.string()}),W.object({type:W.literal("replaceAllContent"),content:W.string()})]).describe("Edit operation to perform")}};return Object.freeze({definition:q,handler:async(K)=>{let{identifier:$,scope:P,operation:j}=K,v;switch(j.type){case"replaceOnce":v={op:"replaceOnce",oldText:j.oldText,newText:j.newText};break;case"replaceAll":v={op:"replaceAll",oldText:j.oldText,newText:j.newText};break;case"replaceRegex":v={op:"replaceRegex",pattern:j.pattern,flags:j.flags||"",replacement:j.replacement};break;case"replaceAllContent":v={op:"replaceAllContent",content:j.content};break;default:throw new Error(`Unknown operation type: ${j.type}`)}let O=sq.isdocId($)?{kind:"id",scope:P,id:$}:{kind:"path",scope:P,path:$},T=await _.DocService.editLatest(O,[v]);return{content:[{type:"text",text:`Edited doc: ${$}
178
+ `}class RP{constructor(_=hv.stdin,q=hv.stdout){this._stdin=_,this._stdout=q,this._readBuffer=new nP,this._started=!1,this._ondata=(f)=>{this._readBuffer.append(f),this.processReadBuffer()},this._onerror=(f)=>{var K;(K=this.onerror)===null||K===void 0||K.call(this,f)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){var _,q;while(!0)try{let f=this._readBuffer.readMessage();if(f===null)break;(_=this.onmessage)===null||_===void 0||_.call(this,f)}catch(f){(q=this.onerror)===null||q===void 0||q.call(this,f)}}async close(){var _;if(this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0)this._stdin.pause();this._readBuffer.clear(),(_=this.onclose)===null||_===void 0||_.call(this)}send(_){return new Promise((q)=>{let f=Hv(_);if(this._stdout.write(f))q();else this._stdout.once("drain",q)})}}var EP={name:"@kelceyp/swic",version:"0.2.10",description:"Story Workflow Inject Context - MCP server for managing stories, subtasks, and pipelines",type:"module",main:"dist/server/Server.js",bin:{"swic-mcp":"./bin/swic-mcp.js",swic:"./dist/cli/cli.js"},files:["dist/","README.md","LICENSE"],scripts:{"build-server":"bun run scripts/server/build-dist.ts","build-cli":"bun run scripts/cli/build-dist.ts",build:"bun run scripts/build-all.ts",prepublishOnly:"bun run build","test:e2e":"bash tests/e2e/run-e2e-tests.sh","test:e2e:build":"bash tests/e2e/build-test-image.sh","test:e2e:rebuild":"bash tests/e2e/build-test-image.sh && bash tests/e2e/run-e2e-tests.sh",lint:"eslint src scripts archive --ext .ts","lint:fix":"eslint src scripts archive --ext .ts --fix"},dependencies:{"@kelceyp/clibuilder":"^0.2.1","@modelcontextprotocol/sdk":"^1.0.0","@types/handlebars":"^4.0.40","@types/yaml":"^1.9.6",debug:"^4.4.3",handlebars:"^4.7.8",yaml:"^2.8.1"},devDependencies:{"@kelceyp/swic":"^0.2.9","@types/bun":"latest","@types/debug":"^4.1.12","@types/node":"^20.0.0","@typescript-eslint/eslint-plugin":"^8.46.2","@typescript-eslint/parser":"^8.46.2",esbuild:"^0.25.11",eslint:"8",typescript:"^5.0.0"},engines:{bun:">=1.0.0"},repository:{type:"git",url:"https://github.com/kelceyp/swic.git"},author:"Paul Kelcey",license:"MIT",keywords:["mcp","model-context-protocol","workflow","story-management","pipeline-orchestration","development-workflow","sdlc"]};var aW=(_)=>{let q={name:"doc_create",description:"Create a new doc with content. Returns the created doc ID.",inputSchema:{scope:W.enum(["project","shared"]).describe("Scope for the doc (project or shared)"),path:W.string().describe('Path for the doc (e.g., "auth/jwt-setup.md")'),content:W.string().describe("Content of the doc")}};return Object.freeze({definition:q,handler:async(K)=>{let{scope:$,path:P,content:j}=K,v=await _.DocService.create({address:{kind:"path",scope:$,path:P},content:j});return{content:[{type:"text",text:`Created doc: ${v.id} at ${v.path}`}]}}})},IW=Object.freeze({create:aW}),Jv=IW;var M$=(_)=>{let q;if(typeof _==="string")q=[_];else if(Array.isArray(_)){if(_.length===0)throw new Error("identifier array cannot be empty");q=_}else throw new Error("identifier must be a string or array of strings");for(let $ of q)if(typeof $!=="string"||$.trim().length===0)throw new Error("All identifiers must be non-empty strings");let f=q.map(($)=>$.trim()),K=[...new Set(f)];if(K.length===0)throw new Error("No valid identifiers provided");return K};wf();var LW=(_)=>{let q={name:"doc_delete",description:"Delete one or more docs. Idempotent - does not error if doc already deleted. Supports bulk operations by passing an array of identifiers.",inputSchema:{identifier:W.union([W.string().describe('Single doc ID (e.g., "doc001") or path (e.g., "auth/jwt-setup.md")'),W.array(W.string()).describe("Array of doc IDs or paths for bulk delete")]).describe("doc identifier(s) - ID or path, single or array"),scope:W.enum(["project","shared"]).optional().describe("Optional scope. Auto-resolves if omitted (checks project first, then shared, or infers from ID prefix)")}};return Object.freeze({definition:q,handler:async(K)=>{let{identifier:$,scope:P}=K,j=M$($),v=await Promise.all(j.map(async(z)=>{let h=sq.isdocId(z)?{kind:"id",scope:P,id:z}:{kind:"path",scope:P,path:z},J=await _.DocService.read(h);return{identifier:z,address:h,doc:J}})),w=[];for(let z of v){let H=await _.DocService.deleteLatest(z.address);w.push({id:z.doc.id,deleted:H.deleted})}let O=w.filter((z)=>z.deleted),T=w.length-O.length,Y={deleted:O.map((z)=>z.id),alreadyDeleted:w.filter((z)=>!z.deleted).map((z)=>z.id),message:`Deleted ${O.length} doc${O.length!==1?"s":""}`+(T>0?`, ${T} ${T!==1?"were":"was"} already deleted`:"")};return{content:[{type:"text",text:JSON.stringify(Y,null,2)}]}}})},tW=Object.freeze({create:LW}),Zv=tW;wf();var eW=(_)=>{let q={name:"doc_edit",description:"Edit doc content using text replacement operations. Uses last-write-wins semantics.",inputSchema:{identifier:W.string().describe('doc ID (e.g., "doc001") or path (e.g., "auth/jwt-setup.md")'),scope:W.enum(["project","shared"]).optional().describe("Optional scope. Auto-resolves if omitted (checks project first, then shared, or infers from ID prefix)"),operation:W.discriminatedUnion("type",[W.object({type:W.literal("replaceOnce"),oldText:W.string(),newText:W.string()}),W.object({type:W.literal("replaceAll"),oldText:W.string(),newText:W.string()}),W.object({type:W.literal("replaceRegex"),pattern:W.string(),flags:W.string().optional(),replacement:W.string()}),W.object({type:W.literal("replaceAllContent"),content:W.string()})]).describe("Edit operation to perform")}};return Object.freeze({definition:q,handler:async(K)=>{let{identifier:$,scope:P,operation:j}=K,v;switch(j.type){case"replaceOnce":v={op:"replaceOnce",oldText:j.oldText,newText:j.newText};break;case"replaceAll":v={op:"replaceAll",oldText:j.oldText,newText:j.newText};break;case"replaceRegex":v={op:"replaceRegex",pattern:j.pattern,flags:j.flags||"",replacement:j.replacement};break;case"replaceAllContent":v={op:"replaceAllContent",content:j.content};break;default:throw new Error(`Unknown operation type: ${j.type}`)}let O=sq.isdocId($)?{kind:"id",scope:P,id:$}:{kind:"path",scope:P,path:$},T=await _.DocService.editLatest(O,[v]);return{content:[{type:"text",text:`Edited doc: ${$}
179
179
  Applied: ${T.applied} edit operation(s)`}]}}})},xW=Object.freeze({create:eW}),Xv=xW;var sW=(_)=>{let q={name:"doc_list",description:"List docs with optional filtering. Returns structured JSON with doc metadata. When no scope specified, lists from both scopes with override detection.",inputSchema:{scope:W.enum(["project","shared"]).optional().describe("Optional scope filter. If omitted, lists from both scopes and detects overrides (project docs that shadow shared ones)"),pathPrefix:W.string().optional().describe('Optional path prefix filter (e.g., "auth/" to list only docs in auth namespace)'),includeContent:W.boolean().optional().default(!1).describe("Include synopsis from front matter in results")}};return Object.freeze({definition:q,handler:async(K)=>{let{scope:$,pathPrefix:P,includeContent:j}=K,v=await _.DocService.list({scope:$,pathPrefix:P,includeContent:j===!0}),w;if(!$){let T=v.filter((h)=>h.id.startsWith("doc")),Y=v.filter((h)=>h.id.startsWith("sdoc")),z=new Set(T.map((h)=>h.path)),H=new Set(Y.map((h)=>h.path));w=v.map((h)=>{let J=h.id.startsWith("doc"),k;if(J&&H.has(h.path))k="overrides";else if(!J&&z.has(h.path))k="overridden";return{id:h.id,path:h.path,scope:J?"project":"shared",override:k,synopsis:h.synopsis,modifiedAt:h.modifiedAt}})}else w=v.map((T)=>({id:T.id,path:T.path,scope:T.id.startsWith("doc")?"project":"shared",synopsis:T.synopsis,modifiedAt:T.modifiedAt}));w.sort((T,Y)=>T.path.localeCompare(Y.path));let O={docs:w,count:w.length};return{content:[{type:"text",text:JSON.stringify(O,null,2)}]}}})},BW=Object.freeze({create:sW}),Av=BW;wf();var UW=(_)=>{let q={name:"doc_move",description:"Move or rename a doc to a new path. Generates a new ID. Supports cross-scope moves.",inputSchema:{source:W.string().describe('Source doc ID (e.g., "doc001") or path (e.g., "auth/jwt-setup.md")'),destination:W.string().describe("Destination path (not ID) for the doc"),sourceScope:W.enum(["project","shared"]).optional().describe("Optional. Source scope. Auto-resolves if omitted."),destinationScope:W.enum(["project","shared"]).optional().describe("Optional. Destination scope. Defaults to source scope if omitted.")}};return Object.freeze({definition:q,handler:async(K)=>{let{source:$,destination:P,sourceScope:j,destinationScope:v}=K,O=sq.isdocId($)?{kind:"id",scope:j,id:$}:{kind:"path",scope:j,path:$},T=await _.DocService.read(O),Y=T.id.startsWith("sdoc")?"shared":"project",z=v||Y,H=Y!==z;if(T.path===P&&Y===z)throw new Error("Source and destination are identical");try{throw await _.DocService.read({kind:"path",scope:z,path:P}),new Error(`Destination already exists: ${z} ${P}`)}catch(k){if(!(k.message.includes("No doc")||k.message.includes("not found")||k.message.includes("File or directory")))throw k}let h=await _.DocService.create({address:{kind:"path",path:P,scope:z},content:T.content});await _.DocService.deleteLatest(O,T.hash);let J={oldId:T.id,newId:h.id,oldPath:T.path,newPath:P,oldScope:Y,newScope:z,message:H?`Moved doc across scopes from ${Y} ${T.path} (${T.id}) to ${z} ${P} (new ID: ${h.id})`:`Moved doc from ${T.path} (${T.id}) to ${P} (new ID: ${h.id})`};return{content:[{type:"text",text:JSON.stringify(J,null,2)}]}}})},FW=Object.freeze({create:UW}),uv=FW;wf();var QW=(_)=>{let q={name:"doc_read",description:"Read one or more docs by ID or path. Returns content with optional metadata. Supports bulk operations by passing an array of identifiers.",inputSchema:{identifier:W.union([W.string().describe('Single doc ID (e.g., "doc001") or path (e.g., "auth/jwt-setup.md")'),W.array(W.string()).describe("Array of doc IDs or paths for bulk read")]).describe("doc identifier(s) - ID or path, single or array"),scope:W.enum(["project","shared"]).optional().describe("Optional scope. If omitted, auto-resolves (checks project first, then shared, or infers from ID prefix)"),includeMetadata:W.boolean().optional().default(!1).describe("Include ID and path metadata header for each doc")}};return Object.freeze({definition:q,handler:async(K)=>{let{identifier:$,scope:P,includeMetadata:j}=K,v=M$($),w=await Promise.all(v.map(async(Y)=>{let z=sq.isdocId(Y);return await _.DocService.read(z?{kind:"id",scope:P,id:Y}:{kind:"path",scope:P,path:Y})})),O=[];for(let Y=0;Y<w.length;Y++){let z=w[Y];if(j)O.push(`ID: ${z.id}`),O.push(`Path: ${z.path}`),O.push("---");let H=z.content;if(!H.endsWith(`
180
180
  `))H+=`
181
181
  `;if(O.push(H),Y<w.length-1)O.push("")}return{content:[{type:"text",text:O.join(`
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@kelceyp/swic",
3
- "version": "0.2.8",
3
+ "version": "0.2.10",
4
4
  "description": "Story Workflow Inject Context - MCP server for managing stories, subtasks, and pipelines",
5
5
  "type": "module",
6
6
  "main": "dist/server/Server.js",
7
7
  "bin": {
8
- "swic-mcp": "./dist/server/Server.js",
8
+ "swic-mcp": "./bin/swic-mcp.js",
9
9
  "swic": "./dist/cli/cli.js"
10
10
  },
11
11
  "files": [
@@ -34,6 +34,7 @@
34
34
  "yaml": "^2.8.1"
35
35
  },
36
36
  "devDependencies": {
37
+ "@kelceyp/swic": "^0.2.9",
37
38
  "@types/bun": "latest",
38
39
  "@types/debug": "^4.1.12",
39
40
  "@types/node": "^20.0.0",